私はこのチュートリアルから WebGL を学んでいます: https://developer.mozilla.org/en-US/docs/WebGL/Animating_textures_in_WebGLと最後のレッスンでは、ビデオ オブジェクトをテクスチャとして使用する方法を示しています。ここに実際の例があります: https://developer.mozilla.org/samples/webgl/sample8/index.htmlは問題なく動作します (私は Firefox を使用しています)。問題は、自分でやろうとしたときに問題に遭遇したことです。さらに奇妙なことに、PC (オフライン) とホスティング (オンライン) で異なるエラー メッセージが表示されます。オフライン エラー:
file:///C:/Users/NPS/Desktop/gallery/video.html(351): SecurityError: 操作は安全ではありません。
351行目は次のとおりです。
gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA, gl.UNSIGNED_BYTE, videoElement);
Firefox 開発者ツールバーには、さらに次のように記載されています。
エラー: WebGL: CORS で検証されていないクロスドメイン要素から WebGL テクスチャをロードすることは禁止されています。https://developer.mozilla.org/en/WebGL/Cross-Domain_Texturesを参照してください
そのエラーについて読んだことがありますが、html ファイルとビデオ ファイルが同じ場所にあるため、機能しないのは奇妙に思えます。また、ページを開くと、ビデオファイルのサウンドが実際に再生されます(ただし、それだけです)。一方、オンライン バージョンのエラーは異なります (ただし、これはポーランド語であり、正確な英語版が何であるかわからないため、ここに掲載することはできません。ただし、Firefox を使用している場合は、ここで確認できます: http:/ /nps.netarteria.pl/gallery/video.html (私は firefox 開発者バーを使用しています). もちろん、ページのソース コードと私が使用しているすべてのものもそこで確認できます。
それを機能させるために何ができるでしょうか?プロジェクトにビデオ テクスチャを入れたいのですが、今は行き詰まっています。