4

タイトルで言ったことをグーグルで検索しようとしていますが、どういうわけか見つかりませんでした。これはそれほど難しいことではありませんね。

私が探しているのは、iPhoneでOpenGL ESテクスチャにアクセスする方法と、それを使用してピクセルを取得/設定する方法です。私が探しているOpenGLES機能は何ですか?

4

2 に答える 2

6

OpenGL ESがテクスチャを表示できるようになる前に、テクスチャをメモリにロードし、テクスチャ名(glGenTextures)を生成し、バインド(glBindTexture)する必要があります。テクスチャデータは、メモリ内の単なる大きな配列です。

したがって、単一のテクセルを変更する必要がある場合は、メモリ内でそれを操作してから、再度バインドすることができます。このアプローチは通常、手続き型テクスチャ生成のために行われます。ネット上には、たとえば次のような多くの利用可能なリソースがあります。http ://www.blumtnwerx.com/blog/2009/06/opengl-es-texture-mapping-for-iphone-oolong-powervr/

glReadPixelsは利用可能ですが、インタラクティブなアプリケーションに使用する必要がある状況はほとんどありません(スクリーンキャプチャが思い浮かびます)。それは絶対にパフォーマンスを破壊します。それでも元のテクスチャは返されませんが、代わりにフレームバッファのブロックが返されます。

どんな効果を求めているのかわかりません。ただし、ピクセルシェーダーをサポートするデバイスをターゲットにしている場合は、カスタムピクセルシェーダーで目的の操作を実行できる可能性があります。

もちろん、私はあなたが画面座標のようにピクセルを意味していなかったという仮定の下で働いています。

于 2010-05-17T17:07:53.657 に答える
4

個々のピクセルの設定についてはわかりませんが、glReadPixelsはフレームバッファー(http://www.khronos.org/opengles/sdk/docs/man/glReadPixels.xml)からピクセルのブロックを読み取ることができます。グーグルの問題は、テクスチャピクセルが「テクセル」に短縮されることが多いためである可能性があります。

于 2010-02-22T19:14:03.117 に答える