Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Di Mai 14, 2024 02:07

Foren-Übersicht » Programmierung » Shader
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 3 Beiträge ] 
Autor Nachricht
BeitragVerfasst: Do Dez 09, 2010 00:08 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
Hi,

ich hab mir nen GeometryShader gebastelt den ich mit Triangels füttern will und rauskommen sollen dann Linien, bzw LineStrips.

Code:
glProgramParameteriEXT(shader, GL_GEOMETRY_INPUT_TYPE_EXT, GL_TRIANGLES);
glProgramParameteriEXT(shader, GL_GEOMETRY_OUTPUT_TYPE_EXT, GL_LINE_STRIP);


Mein mesh rendere ich als VBO und GL_TRIANGLES, allerdings sehe ich sobald ich den shader binde nichtsmehr.
Im shader 'emitte' ich 2 vertices und dann 'beende' dann den Primitive.

Also im grunde müßte jedes Triangle durch einen LineStrip mit 2 Punkten ersetzt werden.

Aber wie gesagt sehe ich nichts. Wenn ich testweise noch ein drittes Vertex emittiere sehe ich aufeinmal wieder normal geshadete Triangles.. nix mit Linien :/

Hab auch schon versucht mein VBO als LineStrip zu rendern, hat aber auch nichts geändert..

Weiß jemand was ich evtl. falsch mache?
Wie muß ich mein VBO rendern wenn ich Triangles als Input und LineStrips als output will?

Aya


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Do Dez 09, 2010 09:40 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 29, 2005 12:28
Beiträge: 2249
Wohnort: Düsseldorf
Programmiersprache: C++, C#, Java
Zitat:
Hab auch schon versucht mein VBO als LineStrip zu rendern, hat aber auch nichts geändert..

Und dann kamen immer noch Dreiecke raus? Dann wird vermutlich überhaupt nicht gerendert und du siehst da irgendwas ganz anderes...

Zitat:
Mein mesh rendere ich als VBO und GL_TRIANGLES, allerdings sehe ich sobald ich den shader binde nichtsmehr.
Im shader 'emitte' ich 2 vertices und dann 'beende' dann den Primitive.

Hast du die Anzahl der Output-Vertices eingestellt?
Code:
glProgramParameteriEXT(shader, GL_GEOMETRY_VERTICES_OUT_EXT, 2);
glProgramParameteriEXT(shader, GL_GEOMETRY_INPUT_TYPE_EXT, GL_TRIANGLES);
glProgramParameteriEXT(shader, GL_GEOMETRY_OUTPUT_TYPE_EXT, GL_LINE_STRIP);

Zudem müssen die obigen Einstellungen vor dem Linken des Shaders passieren.

Zitat:
Wie muß ich mein VBO rendern wenn ich Triangles als Input und LineStrips als output will?

Als GL_TRIANGLES, GL_TRIANGLE_STRIP oder GL_TRIANGLE_FAN. Siehe Tabelle:
http://wiki.delphigl.com/index.php/GL_E ... nput-Typen

_________________
Yeah! :mrgreen:


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Do Dez 09, 2010 12:04 
Offline
DGL Member
Benutzeravatar

Registriert: Di Dez 03, 2002 22:12
Beiträge: 2105
Wohnort: Vancouver, Canada
Programmiersprache: C++, Python
Coolcat hat geschrieben:
Zitat:
Hab auch schon versucht mein VBO als LineStrip zu rendern, hat aber auch nichts geändert..

Und dann kamen immer noch Dreiecke raus? Dann wird vermutlich überhaupt nicht gerendert und du siehst da irgendwas ganz anderes...

Das hab ich noch nicht ausprobiert.. also die kombi es als LineStrip zu rendern und dann 3 Vertices zu emitten. Werd ich heut abend mal testen was dann passiert.

Coolcat hat geschrieben:
Zitat:
Mein mesh rendere ich als VBO und GL_TRIANGLES, allerdings sehe ich sobald ich den shader binde nichtsmehr.
Im shader 'emitte' ich 2 vertices und dann 'beende' dann den Primitive.

Hast du die Anzahl der Output-Vertices eingestellt?
Code:
glProgramParameteriEXT(shader, GL_GEOMETRY_VERTICES_OUT_EXT, 2);
glProgramParameteriEXT(shader, GL_GEOMETRY_INPUT_TYPE_EXT, GL_TRIANGLES);
glProgramParameteriEXT(shader, GL_GEOMETRY_OUTPUT_TYPE_EXT, GL_LINE_STRIP);

Zudem müssen die obigen Einstellungen vor dem Linken des Shaders passieren.

Jep hab ich alles so gemacht und es gibt auch keine fehler beim linken.

Mh.. na ja, werd heute abend nochmal weiter schauen, vieleicht hab ich gestern nur was total doofes übersehen..

Aya~


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 3 Beiträge ] 
Foren-Übersicht » Programmierung » Shader


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 7 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.027s | 19 Queries | GZIP : On ]