Ich gehe davon aus, dass Sie proprietäre Codegeneratoren meinen, die für eine bestimmte interne Verwendung handrolliert sind, da ansonsten alles, was nicht aus Maschinencode besteht, ein Codegenerator ist. Aber los geht's:
Ich halte es für sehr umstritten, dass das Knotendiagramm in Blueprints einfacher zu warten und weitaus weniger fehleranfällig ist als der von ihm generierte GLSL / HLSL-Code (und ansonsten handgeschrieben werden müsste).
Es ist auch viel produktiver, neue Shader zu entwickeln, da Sie in Echtzeit ein visuelles Feedback erhalten, wie das Endergebnis aussieht, wenn Sie das Diagramm ändern. Ich würde es definitiv vorziehen, Tausende von Shadern, die mit Knotengraphen auf diese Weise dargestellt werden, anstelle von GLSL / HLSL-Code beizubehalten, und ich bin eigentlich mit dem Schreiben von GLSL / HLSL besser vertraut als mit der Verwendung von Blueprints. Ich denke, es ist praktisch unmöglich, einen großen Fehler zu verursachen, abgesehen von einigen kleinen visuellen Fehlern, die Sie wahrscheinlich sofort bemerken würden, da die "visuelle Sprache" vernünftige Einschränkungen mit häufig rein funktionalen Stilen auferlegt, die es Ihnen nicht erlauben, beispielsweise stürze einen Shader ab, zumindest AFAIK (ich bin zugegebenermaßen kein Experte für Blaupausen).
Es gibt nicht einmal mehr "Code" zu pflegen. Sie platzieren einfach Knoten in einem Diagramm und zeichnen Verknüpfungen zwischen ihnen. Voila, es generiert Shader-Code für Sie. Wer pflegt dieses Zeug und sagt: " Weißt du, mein Leben wäre so viel einfacher und ich hätte so viel mehr Freizeit, wenn dies nur in GLSL-Code geschrieben wäre, anstatt Blueprints zu verwenden. " Wahrscheinlich nie.
Das heißt, ich habe viele proprietäre Codegeneratoren kennengelernt, die mir das Leben erschwert haben. Dadurch lernte ich diese blöde Metasprache, die nur sehr eingeschränkte Vorteile hat, wenn sie Code in der Sprache des generierten Codes schreibt. Für mich ist ein verräterisches Zeichen der Codegenerierung ein Zeichen, das nicht viel mehr bewirkt, als eine kleine Menge an Boilerplate zu reduzieren, und beispielsweise die Möglichkeit von Fehlern nicht wirklich verringert. Sie wissen, dass es besonders schade ist, wenn es tatsächlich neue Wege einführt, um Fehler zu verursachen, die die Originalsprache nicht hatte. Aber es gibt Fälle für die Codegenerierung, wie die oben genannten, in denen der Produktivitätsschub so massiv ist, dass akribische Dinge, die enorm viel Zeit kosten, jetzt ein paar Cent kosten, dass niemand sie jemals benutzen und dann zurückblicken würde.
Für mich gibt es ein legitimeres Argument für die proprietäre Entwicklung von Blueprints im Epic-Team als viele überflüssige Programmiersprachen für die breite Öffentlichkeit, die kaum etwas Neues auf den Tisch bringen.