gl.texImage2DがUint8ClampedArrayを受け付けない

Occasional Visitor

発生環境:Edge/18.18363

 

WebGLコンテキストでtexImage2DにUint8ClampedArrayを渡すと「WEBGL11068: INVALID_OPERATION: texImage2D: 型指定された配列の型とピクセルデータの型は一致させる必要があります」とコンソールに出力されます。

この時、同様の処理でデータをUint8Arrayとして渡せば正常に描画が行われます。

 

Uint8ClampedArrayはcanvasの2DコンテキストからgetImageDataで取得したImageData.dataの型であり、本現象はcanvasで生成した画像をWebGLのテクスチャとして使用する際に発生しました。

Chrome, FirefoxではUint8ClampedArrayを渡しても問題なく描画が行われており、現状EdgeのみUint8Arrayにデータをコピーする必要があります。

 

1 Reply

@tail-feather Welcome to our MSFT Edge Insider community, and thanks for reaching out.

 

You mentioned that this works as expected in Chrome; can you please confirm which version you tested it on? And similarly, which channel and version of Microsoft Edge?

 

Fawkes (they/them)
Project & Community Manager - Microsoft Edge