フレームごとに1つのテクスチャのテクスチャデータを更新する必要があります。これを非常に速く行う方法はありますか?私にとって最良のオプションはGL_APPLE_client_storageに似たものですが、これはiOSではサポートされていません。明らかな解決策は、フレームごとにglTexImage2Dを呼び出すことですが、これによりデータがコピーされ、同じテクスチャを2回メモリに保持する必要があります。
1198 次
2 に答える
0
テクスチャキャッシュ(iOS 5.0で追加)は、iOSと同等の機能を提供しますGL_APPLE_client_storage
。最初の作成では、それらはトリガーされるように見えglTexImage2D()
ますが、その後の更新はMacのように動作すると思いますGL_APPLE_client_storage
。
AV Foundationはこの場合に最適化されているため、カメラフレームを処理するときに特にパフォーマンスが向上します。このカメラの回答の中で、これがどのように機能するかを詳しく説明します。生データの場合、これに使用する独自のCVPixelBufferRefを作成し、その内部コンテンツに書き込んでテクスチャを直接更新できます。
シーンのレンダリング中にテクスチャデータを上書きして、ティアリングやその他のアーティファクトを引き起こす可能性があるため、これには少し注意する必要があります。
于 2013-03-02T17:32:53.853 に答える
0
たぶん、glTexSubImage2D
Textureを更新するために使用する必要があります。こちらをご覧ください
于 2013-06-13T04:10:34.473 に答える