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

Aktuelle Zeit: Fr Jul 18, 2025 04:34

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



Ein neues Thema erstellen Auf das Thema antworten  [ 6 Beiträge ] 
Autor Nachricht
BeitragVerfasst: Do Jul 29, 2010 10:47 
Offline
DGL Member

Registriert: Do Apr 22, 2010 17:17
Beiträge: 543
Malzeit,

hab gerade mittels glGetIntegerv(GL_MAX_TEXTURE_UNITS_ARB, @TMUs) die Nachricht bekommen das meine Graka 4 TMUs besitzt. Doch SiSoftware-Sandra sagt mir was von 16 Einheiten.. Woran liegt das?!


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Do Jul 29, 2010 10:49 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Wenn du eine NVidia-Karte hast sind beide korrekt. Auf denen kann man in der festen Funktionspipeline nur 4 TMUs nutzen (GL_MAX_TEXTURE_UNITS), und im Shader dann alle (16).

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


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Do Jul 29, 2010 10:52 
Offline
DGL Member

Registriert: Do Apr 22, 2010 17:17
Beiträge: 543
wie du sicher vermutest gehts noch um meine Scheinwerferprojektion... dafür brauch ich ja so viele TMUs wie's nur geht.

Ausserdem kann man doch die automatische Texturkoordinaten generierung nur in der FixedPipe machen oder? Also bringen mit die 16 nix wenn ich da nur auf 4 zugreifen kann..

Also muss ich bei 40 Scheinwerfern meine Szene 10x rendern..


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Do Jul 29, 2010 11:06 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Im Shader kannst du berechnen was du willst, auch so viele projezierte Texturkoordinaten wie du willst. Dafür gibts dann die projezierenden Texturlookups (z.b. texture2DProj). Und die 16 TMUs im Shader sind bei 40 Scheinwerfern eigentlich auch kein Problem, du kannst ja z.b. jede Scheinwerfertextur in einen Slice einer 3D-Textur packen und dann im Shader sampeln, so könntest du rein theoretisch alle deine Scheinwerfertexturen in einer Textur unterbringen.

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


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Do Jul 29, 2010 15:34 
Offline
DGL Member

Registriert: Do Apr 22, 2010 17:17
Beiträge: 543
Sascha Willems hat geschrieben:
Im Shader kannst du berechnen was du willst, auch so viele projezierte Texturkoordinaten wie du willst. Dafür gibts dann die projezierenden Texturlookups (z.b. texture2DProj). Und die 16 TMUs im Shader sind bei 40 Scheinwerfern eigentlich auch kein Problem, du kannst ja z.b. jede Scheinwerfertextur in einen Slice einer 3D-Textur packen und dann im Shader sampeln, so könntest du rein theoretisch alle deine Scheinwerfertexturen in einer Textur unterbringen.


mensch, sonst mist das ich noch nicht wirklich durch die Shadermaterie durchblicke...
ADD
Aber das wäre genau das was ich bräuchte.. Wäre es denn viel Aufwand so einen Shader zu erstellen?


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Do Jul 29, 2010 16:10 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Nein, im Endeffekt sogar weit weniger aufwendig als in der festen Funktionspipeline und auch einfacher. Schwer sind Shader nämlich sind, und in unserem Wiki gibts ja auch zwei umfangreiche Tutorials. Wenn man sich da mal ein Wochenende dransetzt hat mans schnell drauf und muss nicht umständlich über mehrere Passes kompliziert was in der FFP implementieren.

P.S. : In neueren OpenGL-Versionen gibts eh keine feste FFP mehr, von daher ist es also ne Überlegung wert, dass wenn man jetzt mit OpenGL anfängt, man direkt mit Shadern beginnt.

_________________
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  [ 6 Beiträge ] 
Foren-Übersicht » Programmierung » OpenGL


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:  
cron
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.006s | 14 Queries | GZIP : On ]