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

Aktuelle Zeit: Sa Jul 19, 2025 09:24

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



Ein neues Thema erstellen Auf das Thema antworten  [ 4 Beiträge ] 
Autor Nachricht
BeitragVerfasst: Do Nov 25, 2004 18:29 
Offline
DGL Member
Benutzeravatar

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

gibt's irgendne möglichkeit aus einem Shader heraus auf die Geometrie ausserhalb des aktuellen Pixels/Vertex zuzugreifen???
bzw genauer gesagt überleg ich ob es geht schatten via Shader zu berechnen indem man einfach überprüft ob auf dem Ray zwischen Licht und Pixel etwas dazwischen ist... geht das irgendwie???

Au'revoir,
Aya~


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Nov 25, 2004 18:55 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Im Shader selbst kann man immernur auf das aktuelle Vertex bzw. Fragment zugreifen, mehr "kennt" der Shader nicht. Du musst die umliegende Geometrie also selbst übergeben (per Shaderparameter oder via Textur). Dass was du willst ist aber machbar, es gibt sogar ganze Raytracer die auf der GPU (via Shader) laufen.

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


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Nov 25, 2004 19:42 
Offline
DGL Member
Benutzeravatar

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

Sascha Willems hat geschrieben:
per Shaderparameter oder via Textur

wie genau meinst du das?? jeden Vertex der Graka als Parameter übergeben?? So das ich die Geometrie im Shader nachbauen kann???

und wenn du das so meinst, wie deklarier ich da die variable im Shader??? Für jeden Vertex ein vec3???

Au'revoir,
Aya~


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Nov 25, 2004 19:53 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Nein, das geht im Normalfall nicht, da du ja nur ne begrenzte Zahl von Registern hast. Du kannst da also nicht 10.000 Vertices an nen Shader übergeben, da musst du schon vorher nen Teil der Arbeit auf der CPU machen. Das was du willst ist anscheinend Raycasting, und für ne komplexe Szene wirst du dass nicht so ohne Weiteres in Echtzeit realisieren können, auch wenn du einen Teil der Arbeit auf die GPU auslagerst.

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


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


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 4 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.007s | 14 Queries | GZIP : On ]