DGL https://delphigl.com/forum/ |
|
Shader zusammensetzen https://delphigl.com/forum/viewtopic.php?f=20&t=11749 |
Seite 1 von 1 |
Autor: | mathias [ So Okt 01, 2023 14:51 ] |
Betreff des Beitrags: | Shader zusammensetzen |
Ich habe folgendes compiliert und das Shader erstellen geht ohne Probleme, es kommt nicht mal eine Warnung. Obwohl ich 2 Vertex-Shader angegeben habe. vertexshader.glsl Code:
test.glsl Code:
Lazarus: Code:
Dies funktioniert aber nur solange, wen im 2. Shader nicht main() steht. Da bin ich auf folgende Idee gekommen: Code:
Code:
Das wird aber mit dem Fehler quittiert, das er meinXXX() nicht findet. Nun zur Frage, ist sowas überhaupt möglich ? Wen nein, wieso wird dann überhaupt die Source mit mainXXX() compiliert ? |
Autor: | Phobeus [ Di Nov 05, 2024 06:50 ] |
Betreff des Beitrags: | Re: Shader zusammensetzen |
Nun, wenn Du zwei einesetzt, wird er den ersten vermutlich mit dem zweiten Überschreiben und entsprechend die Funktionen aus dem ersten nicht mehr kennen. Ich habe mir damals damit beholfen eine Art eigenes Include dafür zu schreiben. Also z.B. ein "#include myfile" eingebaut. Als der Shader-Source gelesen wurde, habe ich nach dem Pattern gesucht, das weitere File angelesen und an der Stelle im Code eingefügt bevor es zum Kompilieren an den Treiber gegangen ist. Dadurch konnte man Methoden und Funktionen über mehrere Shader hinweg anwenden. |
Seite 1 von 1 | Alle Zeiten sind UTC + 1 Stunde |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |