現在、スナップショットを使用してピッキングを行っています。レンダリング コードを変更して、オブジェクト ID をレンダリングし、スナップショットを取得してから、ユーザーがタップしたピクセルの値を取得します。ただし、これは非常に非効率的だと思います-一部のiPadで速度が遅いという報告を受けています(私のミニは問題ありません)。
バックバッファにレンダリングし、glreadpixels の呼び出しを使用して、オブジェクト ID を画面にレンダリングせずに、ユーザーがタップしたピクセルのみを取得することは可能ですか? レンダリングに GLKView を使用しています。現在のコードで glreadpixels を試してみましたが、常に黒を返すようです。GLKView のドキュメントではスナップショットのみを使用することを推奨していることは知っていますが、単一のピクセルのみを取得することを選択する方が効率的であることは確かです。