Checkliste Selektion: Unterschied zwischen den Versionen

Aus DGL Wiki
Wechseln zu: Navigation, Suche
K (Grundlagen)
(Verwendung der Checkliste)
 
Zeile 3: Zeile 3:
 
Wenn ein Punkt mit ja beantwortet werden kann, kann man den nächsten Punkt angehen.
 
Wenn ein Punkt mit ja beantwortet werden kann, kann man den nächsten Punkt angehen.
  
 +
{{Hinweis|Die OpenGL Selektion wird allgemein nicht mehr zur Verwendung empfohlen. Statt dessen sollte [[Color Picking]] genutzt werden, was mit und ohne Shader mit hoher Performance funktioniert.}}
  
 
==Grundlagen==
 
==Grundlagen==

Aktuelle Version vom 15. Januar 2011, 20:51 Uhr

Verwendung der Checkliste

Die nachfolgende Checkliste sollte nach und nach abgearbeitet werden um einfache Fehler auszuschließen. Wenn ein Punkt mit ja beantwortet werden kann, kann man den nächsten Punkt angehen.

Info DGL.png Die OpenGL Selektion wird allgemein nicht mehr zur Verwendung empfohlen. Statt dessen sollte Color Picking genutzt werden, was mit und ohne Shader mit hoher Performance funktioniert.

Grundlagen

  • Benutzen Sie eine funktionierende Programmgrundlage (Template)?
Wurde ein Template von DelphiGL.com benutzt, oder wurde das Template bereits erfolgreich getestet dann kann von einer Funktionierenden Programmgrundlage ausgegangen werden.
  • Funktioniert das Programm ohne Selektion?
Kommentieren Sie allen selektionsrelevanten Code aus, und prüfen Sie die Ausgabe.
  • Läuft das Programm ohne OpenGL-Fehler zu produzieren?
Benutzen Sie einen Error-Handler wie er im "Tutorial_quickstart" beschrieben wird, um dies zu testen.

Problemspezifisches

  • Haben Sie bei der Initialisierung des Namestacks eine 0 auf selbigen gelegt?
Dieses etwas seltsame vorgehen ist nötig um Stackunderflows zu vermeiden. Dieser Punkt wurde auch im Tutorial Selection erwähnt.
  • Haben Sie den unterschiedlichen Objekten auch unterschiedliche OpenGL-Namen zugewiesen?
OpenGL behält den zuletzt vergebenen Namen für alle folgenden Objekte bei, da OpenGL nach dem Prinzip einer Zustandsmaschine arbeitet. Objekte die sie nicht in der Selektion beachten wollen, müssen demnach von ihnen einen speziellen Wert zugewiesen bekommen, den sie dann aktiv als "nicht relevant" ausfiltern.
  • Verwenden Sie im Selektionsmodus die selben Einstellungen für die Projektionsmatrix wie im Rendermodus?
Die Einstellungen (Gemeint sind dabei die Parameter die sie glOrtho bzw. gluPerspective übergeben) müssen gleich sein, weil sich sonst die Positionen der Objekte in den Modi unterscheiden.