Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

the[V]oid

Alter Hase

  • »the[V]oid« ist der Autor dieses Themas

Beiträge: 775

Wohnort: Aachen

  • Private Nachricht senden

1

16.11.2009, 17:38

OpenGL Shader Anfängerproblem

Hallo

Ich habe eine Anwendung, die einen grauen Würfel rendert.
Nun habe ich dem Ganzen Shader hinzugefügt.
Zuerst habe ich es mit einem Fragment-Shader probiert.
Dieser enthielt den folgenden Code:

C-/C++-Quelltext

1
void main() { gl_FragColor = vec4 (1.0,0.5,0.5,1.0); }


Erwartungsgemäß wurde der Würfel damit hellrot gerendert.
Prinzipiell schien die Shader-Geschichte also zu funktionieren.
Dann ersetzte ich den Fragment-Shader durch einen Vertex-Shader.
De Facto ersetzte ich nur GL_FRAGMENT_SHADER durch GL_VERTEX_SHADER und den Code zu:

C-/C++-Quelltext

1
void main() { gl_Position = ftransform(); }


Fortan bekam ich nur noch einen schwarzen Bildschirm zu sehen.
Ohne jetzt übermäßig viel Code hier zu posten, wo sollte ich den Fehler suchen?
Hatte bisher noch nie etwas mit Shadern zu tun.
Fehlerausgaben vom GL-Treiber bekomme ich keine.

Vielen Dank im Voraus
<< an dieser Stelle ist eine Signatur verstorben >>

carli

unregistriert

2

16.11.2009, 18:25

Ganz einfach - du brauchst beides.
Aber einen Fragment-Shader zu ersetzen durch einen Vertex-Shader ist Unsinn, das ist wie als wenn du im Auto den Motor durch einen Rücksitz ersetzt.
Es müssen beide Shader zusammengelinkt werden, wobei der Vertex Shader die Daten für den Fragment Shader zurechtlegt.

the[V]oid

Alter Hase

  • »the[V]oid« ist der Autor dieses Themas

Beiträge: 775

Wohnort: Aachen

  • Private Nachricht senden

3

16.11.2009, 18:49

Dankeschön! Lag tatsächlich daran.
<< an dieser Stelle ist eine Signatur verstorben >>

Werbeanzeige