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

Aktuelle Zeit: Do Jul 24, 2025 00:15

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



Ein neues Thema erstellen Auf das Thema antworten  [ 9 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Mein erster Shader!
BeitragVerfasst: Fr Feb 11, 2005 16:50 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Jul 17, 2002 12:07
Beiträge: 976
Wohnort: Tübingen
Habe meine erste Shader-Demo fertig programmiert! *ganzstolzbin* :P
Schaut ihn euch mal an. Mich würde vor allem interessieren, wies bei euch Performance-mäßig ausschaut.
Download: http://laboda.delphigl.com/aProjekt.htm
PS: Die Normalen der Teekanne sind noch falschrum, ein Fehler des 3ds-Exporters von Cinema4D

//EDIT: Sch...ade, eine FPS-Anzeige fehlt. Werde ich mal bald einbauen, bitte mal mit Fraps ausprobieren :oops:

_________________
"Du musst ein Schwein sein in dieser Welt, sangen die Prinzen, das ist so 1.0. Du musst auf YouTube zeigen, dass dir dein Schweinsein gefällt, das ist leuchtendes, echtes Web 2.0."
- Hal Faber

Meine Homepage: http://laboda.delphigl.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Feb 11, 2005 19:08 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Bei mir scheint das nicht so zu funktionieren wie es soll. Es spielt nämlich keine Rolle was ich einstelle, es sieht immer gleich aus. (Radeon 9700, Catalyst 5.1)

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Feb 11, 2005 19:27 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Jul 17, 2002 12:07
Beiträge: 976
Wohnort: Tübingen
Argh....jetzt geht die Suche los :cry:
Bei mir und Adler (beide GF 6600 GT) funzts einwandfrei, ebenso auf einer GF 6800 und auf ner GF 5200 (uralte Treiber). Hab das ganze eigentlich komplett herstellerunabhängig geproggt. Ich weis jedenfalls im Moment nicht weiter :x
Hat da jemand schon Erfahrungen?

Noch zwei Screens, wies eigentlich ausschauen sollte:
Phong - geshadet:
Bild
Blinn-Phong-Algorhytmus:
Bild

_________________
"Du musst ein Schwein sein in dieser Welt, sangen die Prinzen, das ist so 1.0. Du musst auf YouTube zeigen, dass dir dein Schweinsein gefällt, das ist leuchtendes, echtes Web 2.0."
- Hal Faber

Meine Homepage: http://laboda.delphigl.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Feb 11, 2005 19:35 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Dez 28, 2002 11:13
Beiträge: 2244
Ich habe man in den blinn.fp ans Ende "gl_FragColor = vec4(1,1,1,1);" geschrieben, aber es zeigt sich keine Änderung. Überprüf mal das InfoLog. Vielleicht ist ein Fehler drin.
Der ATI GLSL Compiler ist nicht so robust wie der von NVidia. Da habe ich lange Zeit eine Menge Ärger mit gehabt, so daß ich mittlerweile nur noch ARB_fp nehme.


Zuletzt geändert von LarsMiddendorf am Fr Feb 11, 2005 19:37, insgesamt 1-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Feb 11, 2005 19:37 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
NVidia hält sich leider nicht 100% an die glSlang-Standards, dort kann man Sachen machen die man eigentlich nicht darf. Hier die Ausgabe des Shaderlogs auf meiner R9700 :

Blinn :
Code:
  1. Output of current glSlang-Implementation (ATI Technologies Inc. - RADEON 9700 x86/MMX/3DNow!/SSE - 1.5.4830 WinXP Release) :
  2. Vertex shader...
  3. ERROR: 0:15: '/' :  wrong operand types  no operation '/' exists that takes a left-hand operand of type '3-component vector of float' and a right operand of type 'const int' (or there is no acceptable conversion)
  4. ERROR: 1 compilation errors.  No code generated.
  5.  
  6.  
  7. Fragment shader...
  8. ERROR: 0:11: 'max' : no matching overloaded function found
  9. ERROR: 0:13: 'max' : no matching overloaded function found
  10. ERROR: 2 compilation errors.  No code generated.
  11.  
  12.  
  13. Program object...
  14.  Link failed. All shader objects have not been successfully compiled.
  15.  


Phong :
Code:
  1. Output of current glSlang-Implementation (ATI Technologies Inc. - RADEON 9700 x86/MMX/3DNow!/SSE - 1.5.4830 WinXP Release) :
  2. Vertex shader...
  3. Fragment shader...
  4. ERROR: 0:11: 'max' : no matching overloaded function found
  5. ERROR: 0:13: 'max' : no matching overloaded function found
  6. ERROR: 2 compilation errors.  No code generated.
  7.  
  8.  
  9. Program object...
  10.  Link failed. All shader objects have not been successfully compiled.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Feb 11, 2005 19:40 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Dez 28, 2002 11:13
Beiträge: 2244
Wenn man die 2 durch 2.0 und die 0 durch 0.0 jeweils ersetzt dann geht es. Das ist zwar wie Sascha meinte, schon das richtige Verhalten gemäß der Spezifikation, aber trotzdem finde ich es seltsam, dass Integer Konstanten nicht nach float konvertiert werden. Da muß man dann eben drauf achgeben. Die Demo von Delphi3D.Net hatte genau das gleiche Problem, dass es wegen dieser Unstimmigkeiten auf der GeForce lief, aber nicht hätte laufen dürfen und auf der ATI Karte korrekterweise nicht funktioniert hat.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Feb 11, 2005 19:52 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Jul 17, 2002 12:07
Beiträge: 976
Wohnort: Tübingen
Es ist so, wie es Sascha sagt. Das ärgert mich jetzt schon ein bissl, dass NV/ATI hier unterschiedlich tolerant sind...
Das Problem mit dem "/" hab ich jetzt so gelöst, dass ich nicht mehr durch ne feste Zahl teile, sondern einen Vektor (vec2 two = {2.0, 2.0, 2.0}; ).
Ich hab jetzt blos keine Ahnung, wie ich das "max" so ersetzen kann, dass es Vektoren verarbeitet, außer dass ich jede Komponente (xyz) einzeln verarbeite. Wäre dankbar für einen Tipp, der hier das ganze vereinfachen würde!

//Edit: Oh, Lars war schneller. Danke, werde das einbauen!

_________________
"Du musst ein Schwein sein in dieser Welt, sangen die Prinzen, das ist so 1.0. Du musst auf YouTube zeigen, dass dir dein Schweinsein gefällt, das ist leuchtendes, echtes Web 2.0."
- Hal Faber

Meine Homepage: http://laboda.delphigl.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Feb 12, 2005 13:39 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Jul 17, 2002 12:07
Beiträge: 976
Wohnort: Tübingen
Also Danke nochmal. Ich habe es jetzt so geändert, wies Lars vorgeschlagen hat.
Die neueste Version für alle, die meine Hammer-Lighting-Demo :wink: nun auch auf Radeon-Grafikkarten genießen wollen, gibts inklusive FPS-Anzeige (Wow!) bei o.g. Link.

_________________
"Du musst ein Schwein sein in dieser Welt, sangen die Prinzen, das ist so 1.0. Du musst auf YouTube zeigen, dass dir dein Schweinsein gefällt, das ist leuchtendes, echtes Web 2.0."
- Hal Faber

Meine Homepage: http://laboda.delphigl.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Feb 12, 2005 16:38 
Offline
DGL Member

Registriert: Mo Jan 20, 2003 20:10
Beiträge: 424
Wohnort: nähe Starnberg
Läuft bei mir mit ca. 750-800FPS (ATI Radeon 9800pro)

Gruß
KidPaddle

_________________
http://www.seban.de


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


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 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:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.020s | 17 Queries | GZIP : On ]