質問
こんにちはみんな私はジョグルプロジェクトでピッキングオブジェクトを追加するのに問題があります。これはピックバッファーで行うことができることを知っています。しかし、例を見つけることができませんか?
解決
一般的に、おそらくご存知のように、Joglコードは、Webに表示される他のOpenGLの例から直接翻訳されます。
GL_SELECT
最近、ベースのピッキングは非常に好意的ではないようです。仕様に廃止され、ドライバーによって不十分に実装されています。
使用できる代替手段は次のとおりです。
ユニークな色(およびすべての照明 /霧などが無効になっている)で各オブジェクトをレンダリングするので
glReadPixels
. 。 (ピッキングステージの後にバッファをクリアして、通常のグラフィックをレンダリングできるようにします)。このアプローチは、の最上位の答えによって説明されます OpenGL GL_Selectまたは手動衝突検出? 例えば。ジオメトリへのレイキャスティング(以下の選択FAQリンクを参照)。これはまた、コードを呼び出すスレッドFWIWにアクティブなGLコンテキストを持つ必要がないことを意味します。
これらの両方の方法を同じアプリケーションで使用しましたが、現在後者では良い結果が得られていますが、そのアプリケーションのオブジェクトのほとんどは球体であるため、任意のモデルよりもはるかに安価です。
所属していません StackOverflow