3

これは、float または half_float テクスチャを使用する OpenGL ES 2.0 :glReadPixels() に関連しています。

レンダリング後にフレーム バッファ オブジェクトから float 値を読み出したいと考えています。

iOS では、次の

    GLint ext_type;
    glGetIntegerv(GL_IMPLEMENTATION_COLOR_READ_TYPE, &ext_type);

実際にはglReadPixels、GL_UNSIGNED_BYTE のみが読み取られることを示しているだけです。

これを回避するために、この記事に関連するテクスチャ キャッシュ技術を使用する方法はありますか?

バック ストーリーは、OpenGL ES 2.0 フラグメント シェーダーを使用して、任意のサイズの行列 (たとえば、100,000 x 100,000) の一般的な行列乗算ルーチンを実装しようとしているということです (Dominik Göddeke の信頼できる古いチュートリアルの例に似ています)。 glReadPixelフレームバッファのフロートを GL_UNSIGNED_BITS に変換し、精度が失われるため、ここでは特に協調的ではありません。

4

1 に答える 1

1

同様の質問をしましたが、答えはNOだと思います。テクスチャ キャッシュ (API として) が CoreVideo ピクセル バッファーを使用し、現在は float 形式をサポートしていないためです。

于 2013-01-13T04:50:55.987 に答える