Color Picking

Aus DGL Wiki
Wechseln zu: Navigation, Suche

Color Picking ist eine Technik zur Selektion von Objekten in der Szene. D.h. man erhält eine Antwort auf die Frage "Auf welches Objekt habe ich gerade geklickt?".

Problem

Die standard OpenGL Selektion wird von neueren Grafikkarten/Treibern scheinbar nicht mehr in Hardware unterstützt, somit ist Color Picking die bessere Alternative.

Idee

Die Grundidee ist, zum Zeitpunkt des Klicks, die Szene ohne Effekte (Shader, Beleuchtung, Texturen) zu rendern, und jedem Objekt, welches ausgewählt werden können soll, eine eindeutige Farbe zuzuweisen. Danach ließt man aus dem gerenderten Bild das/die Pixel unter der Maus aus und kann anhand des Farbcodes, das Objekt ermitteln, welches angeklickt wurde.

Siehe Auch

Details dazu findet man im Tutorial ColorPicking_Shader von unserem Mitglied Waran. Das Tutorial nutzt Shader, jedoch ist das Prinzip unabhängig von deren Einsatz. DGL Mitglied Tilman hat ein Paper geschrieben, was den shaderlosen Weg erklärt.