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

Aktuelle Zeit: Do Mär 28, 2024 18:14

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



Ein neues Thema erstellen Auf das Thema antworten  [ 3 Beiträge ] 
Autor Nachricht
BeitragVerfasst: So Jul 08, 2018 17:08 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Mai 31, 2002 19:41
Beiträge: 1276
Wohnort: Bäretswil (Schweiz)
Programmiersprache: Pascal
Meistens wird eine 4x4Matrix für 3D gebraucht.

Nur wen man eine Textur-Matrix hat, oder bei eine 2D-Grafik ist es verlockend eine 3x3Matrix zu verwenden.

Nur kann man für 4x4 SSE-Befehle der CPU verwenden, welche einen enormen Geschwindigkeitszuwachs haben. Das selbe gilt für 4-fach Vektoren.
Auch habe ich schon festgestellt, das in GLSL vieles 4-fach läuft. ZB. bei UBO wird alles auf 4 aufgerundet. Es wird vieles als 128Bit gehandhabt.

Bringt es überhaupt noch eine Vorteil, wen man 3x3 anstelle von 4x4 verwendet ?
Die meisten CPUs unterstützen heute SSE.

_________________
OpenGL


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Di Jul 10, 2018 16:08 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Aug 14, 2013 21:17
Beiträge: 587
Programmiersprache: C++
Ob SSE überhaupt verwendet wird, hängt von der verwendeten Matrix-Bibliothek und dem Compiler ab. Sicher ist, dass eine mat3 nur drei Uniform-Register belegt, während eine mat4 vier Register benötigt (1 Register == 1 vec4). Manchmal muss man Register sparen. Und in GLSL ist eine Transformation mit mat3 Matrix auf üblicher Hardware mindestens so schnell wie eine mat4-Trafo. Ich würde wetten, dass sie sogar schneller ist.

_________________
So aktivierst du Syntaxhighlighting im Forum: [code=pascal ][/code], [code=cpp ][/code], [code=java ][/code] oder [code=glsl ][/code] (ohne die Leerzeichen)


Nach oben
 Profil  
Mit Zitat antworten  
BeitragVerfasst: Mi Jul 11, 2018 17:05 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Mai 31, 2002 19:41
Beiträge: 1276
Wohnort: Bäretswil (Schweiz)
Programmiersprache: Pascal
Das ich so frage, kommt daher, das ich mich momentan mit SSE/AVX beschäftige. Und da werden 4x Vektoren benötigt. Bei späteren Version sind auch 8x/16x möglich.

_________________
OpenGL


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 » OpenGL


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 51 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.059s | 17 Queries | GZIP : On ]