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

Aktuelle Zeit: Fr Jul 18, 2025 07:57

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



Ein neues Thema erstellen Auf das Thema antworten  [ 4 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: VBO und Picking
BeitragVerfasst: Mi Jun 17, 2009 21:03 
Offline
DGL Member

Registriert: Do Jun 04, 2009 07:28
Beiträge: 7
Hallo, ich habe schon die nächste Frage bzgl. VBO.

In meinem "Würfel-Projekt" habe ich anfangs display Listen verwendet um 24 * 840 Würfel zu gruppieren.

Die MouseOver Funktion soll jeweils den Würfel erkennen, der sich momentan unter dem Cursor befindet.
Hierfür habe ich den Name Stack bemüht und die entsprechenden Würfel im Render-Mode ermittelt.
Da ich nun aber keine Display-Listen mehr verwende - sondern VBO - kann ich den einzelnen Würfeln keine Namen mehr zuteilen.

Muss ich jetzt etwa alles doppelt erstellen, nur damit ich das Picking implementieren kann?

Vielen Dank im Vorraus, Knaggy.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jun 17, 2009 21:22 
Offline
DGL Member
Benutzeravatar

Registriert: So Jun 04, 2006 12:54
Beiträge: 263
Es ist nicht empfehlenswert das picking von OpenGL zu verwenden. Es war noch nie Hardwarebeschleunigt und meist nur so schnell, das es gerade für alte anwendungen noch ausreicht.

EIne BEssere Möglichkeit ist es im VBO eine zusätzliche Farbe für jedes Objekt zu vergeben und diese nach dem rendern mit glReadPixel auszulesen. Beim rendern sollte man nach Möglichkeit ein eigenes FBO benutzen, es reicht aus wenn es nur wenige pixel groß ist. DIe transformationen entsprechen dabei dem Picking.

_________________
Lumina plattform unabhängige GLSL IDE


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jun 17, 2009 21:48 
Offline
DGL Member

Registriert: Do Jun 04, 2009 07:28
Beiträge: 7
Danke für den Tipp.
Das mit dem FBO ist mir noch nicht ganz klar, aber ich werde die zusätzliche Farbzuordnung zu den VBO mal ausprobieren.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jun 17, 2009 22:13 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 29, 2005 12:28
Beiträge: 2249
Wohnort: Düsseldorf
Programmiersprache: C++, C#, Java
Du kannst auch den Strahl der vom Cursor in den Bildschirm hineinzeigt berechnen und diesen dann mit den einzelnen Würfeln schneiden. Die CPU ist zwar vom Prinzip langsamer als die Grafikkarte, dafür kannst du aber eine räumliche Datenstruktur (Octtree, etc...) verwenden und so die Suche extrem beschleunigen.

Den Code um den Strahl zu berechnen hatte ich hier bereits einmal vor einigen Wochen irgendwo gepostet. Einfach mal nach Picking suchen.

_________________
Yeah! :mrgreen:


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


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 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 | 15 Queries | GZIP : On ]