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

Aktuelle Zeit: Sa Jul 05, 2025 07:16

Foren-Übersicht » Programmierung » Einsteiger-Fragen
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 5 Beiträge ] 
Autor Nachricht
BeitragVerfasst: So Sep 21, 2008 23:09 
Offline
DGL Member
Benutzeravatar

Registriert: Di Apr 29, 2008 18:56
Beiträge: 1213
Programmiersprache: Delphi/FPC
HI,

ich wollt ma fragen ob man glPushMatrix/glPopMatrix auch schachteln kann, also:

Code:
  1. [...]
  2. glPushMatrix;
  3.   [...]
  4.   glPushMatrix;
  5.     [...]
  6.   glPopMatrix;
  7.   [...]
  8. glPopMatrix;
  9. [...]


geht das so? und wie oft kann man das machen? könnt das zugriffsverletzungen verursachen?
weil ich in letzter Zeit hab ich irgendwelche komischen fehler, und ich weiß einfach nich wo
die her kommen...

MfG Bergmann.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Sep 22, 2008 00:22 
Offline
Ernährungsberater
Benutzeravatar

Registriert: Sa Jan 01, 2005 17:11
Beiträge: 2068
Programmiersprache: C++
Es ist ein Stack, von daher ist es sogar so gedacht.
Schau aber auf die OpenGL-Fehler. Der Stack hat nur begrenzte Kapazität.

_________________
Steppity,steppity,step,step,step! :twisted:
❆ ❄ ❄ ❄ ❅ ❄ ❆ ❄ ❅ ❄ ❅ ❄ ❅ ❄ ❄
❄ ❄ ❄ ❅ ❄ ❄ ❄ ❅ ❄ ❄ ❆ ❄ ❄


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Sep 22, 2008 07:48 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Der Modelview Stack bietet meistens (sofern ich mich ohne Kaffee richtig erinnere) Platz für 32 Matrizen. Zugriffsverletzungen wirst du dadurch aber nicht bekommen. Selbst wenn der Stack über oder unterläuft wird es dabei nur einen OpenGL Fehler geben.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Sep 22, 2008 08:46 
Offline
DGL Member

Registriert: Di Jun 06, 2006 09:59
Beiträge: 474
32 Einträge für ModelView, 2 für die anderen Modi(Projektion,Textur,Farbe). Push darfst du dann natürlich nur einmal weniger aufrufen, weil die aktuelle Matrix mitzählt. Natürlich kann eine Implementation einen tieferen Stack haben, du kannst dich aber nicht darauf verlassen. Man kann die Stackgröße der Implementation auch abfragen.

OpenGL 2.0 Spec:
There is a stack of matrices for each of matrix modes MODELVIEW,
PROJECTION, and COLOR, and for each texture unit. For MODELVIEW mode, the
stack depth is at least 32 (that is, there is a stack of at least 32 model-view matrices).
For the other modes, the depth is at least 2. Texture matrix stacks for all
texture units have the same depth. The current matrix in any mode is the matrix on
the top of the stack for that mode.
OpenGL 1.1 Spec:
There is a stack of matrices for each of the matrix modes. For MODELVIEW mode, the stack depth is at least 32 (that is, there is a stack of at least 32 model-view matrices). For the other modes, the depth is at least 2. The current matrix in any mode is the matrix on the top of the stack for that mode.

_________________
Bild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mo Sep 22, 2008 21:58 
Offline
DGL Member
Benutzeravatar

Registriert: Di Apr 29, 2008 18:56
Beiträge: 1213
Programmiersprache: Delphi/FPC
OK, danke!


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


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 5 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 ]