Registriert: Fr Dez 28, 2007 20:24 Beiträge: 62 Wohnort: Berlin
Ich habe schon ein paar Themen mittles Suche gefunden nur scheint mein Problem dadurch nicht behoben.
Ich habe die Selectfunktion aus dem Tutorial für mein Programm übernommen, jedoch funktioniert es rein garnicht. Er gibt mir zwar keine Fehlermeldungen doch liefert die Funktion immer nur -1 als Ergewbnis.
Ich habe mir auch schon das Programm zum Tutorial herunter geladen, dort sind aber Quelltextunterschiede zum Tut in der wiki. Hinzu kommt eine endloslange nicht für mich Nachvollziehbare procedure die sich SetupPixelFormat nennt und eine Exepction an der Adresse 0000 wenn ich das ganze versuche zu übernehmen -.-
Registriert: Mo Sep 23, 2002 19:27 Beiträge: 5812
Programmiersprache: C++
In der Funktion Render setzt du erneut die perspektivische Matrix, und überschreibst daher die Pickingmatrix in deiner Selektionsfunktion, dann kann die Selektion natürlich nicht funktionieren.
Registriert: Mo Sep 23, 2002 19:27 Beiträge: 5812
Programmiersprache: C++
Wenn du im Selektionsmodus bist, setzt du die Perspektive in Render halt nicht. In welchem Modus man sich befindet lässt sich mittels glGet ermitteln (siehe Wiki).
Registriert: Mo Sep 23, 2002 19:27 Beiträge: 5812
Programmiersprache: C++
Nein, ich hab ja oben geschrieben glGet(Integer), und dann als Token GL_RENDER_MODE, so erhälst du dann als Rückgabewert entweder GL_RENDER oder GL_SELECT.
Registriert: Mo Sep 23, 2002 19:27 Beiträge: 5812
Programmiersprache: C++
Code:
glGetIntegerv(GL_RENDER_MODE,@RenderMode)
Wobe RenderMode vom Typ Integer ist. Dann steht dort entweder der Wert von GL_SELECT oder GL_RENDER, anhand dessen kannst du dann unterscheiden. Die Perspektive musst du beim normalen Rendern ja so oder so setzen.
Kleiner Hinweis : OpenGL-Selektion sollte man eigentlich nicht mehr verwenden, bei NVidia ist diese seit dem Rel90-Treiber z.B. unbrauchbar langsam. Daher sollte man selbst z.b. Farbseletkion implementieren, dazu gibts hier im Forum einige Beiträge.
Mitglieder in diesem Forum: Google [Bot] und 3 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.