GPU メモリから WebGL の CPU にテクスチャをコピーするにはどうすればよいですか? 実行時に texSubImage2D を使用してテクスチャを更新しています。
私は避けたい:
- テクスチャのコピーをキャンバスに保存する
- テクスチャへのレンダリングと readPixels の呼び出し
他に方法はありますか?
すでにこれらを読んでいます (実行中に更新されないテクスチャに役立ちます):
GPU メモリから WebGL の CPU にテクスチャをコピーするにはどうすればよいですか? 実行時に texSubImage2D を使用してテクスチャを更新しています。
私は避けたい:
他に方法はありますか?
すでにこれらを読んでいます (実行中に更新されないテクスチャに役立ちます):
テクスチャを FBO にアタッチして readPixels を実行する以外に方法はありません。
readPixels または (readPixels は少し遅くなる傾向があるため) キャンバスのサイズの 4 分の 1 にレンダリングできます。
と
var img = canvas.toDataURL("image/png");
そのテクスチャは img 変数になります。それが機能するには、次のようなものでglを初期化する必要があります
gl = canvas.getContext("experimental-webgl", {preserveDrawingBuffer: true});