2017-03-13 34 views
1

最近ユニティを5.5.1にアップデートしました(Unity 5.5.2p2もテスト済み)。カスタムビデオプレーヤーはChromeで動作しなくなりました。Chromeで動画を表示しようとしたUnity WebGLエラー

[.Offscreen-For-WebGL-000001C45847DE90]GL ERROR :GL_INVALID_OPERATION : glCopyTextureCHROMIUM: texture is immutable 

私はこのエラーを生成されたコードはわかりませんが、ここにある:5.3

私は取得していますエラーでビルドする際には、これはしかし、Firefoxとエッジ上で動作し、Chromeで動作するように続けます周りの作業をお勧めします可能性がエラーに精通

WebGLMovieTextureCreate: function(url) 
{ 
    var str = Pointer_stringify(url); 
    var video = document.createElement('video'); 
    video.style.display = 'none'; 
    video.src = str; 
    video.crossOrigin='anonymous'; 
    return videoInstances.push(video) - 1; 
}, 

WebGLMovieTextureUpdate: function(video, tex) 
{ 
    if (videoInstances[video].paused) 
     return; 
    GLctx.bindTexture(GLctx.TEXTURE_2D, GL.textures[tex]); 
    GLctx.texImage2D(GLctx.TEXTURE_2D, 0, GLctx.RGBA, GLctx.RGBA, GLctx.UNSIGNED_BYTE, videoInstances[video]); 
}, 

WebGLMovieTexturePlay: function(video) 
{ 
    videoInstances[video].play(); 
}, 

誰も:私たちは、ビデオを表示するには、Javascriptの土地で何をやっていますか?

答えて

1

私は同じ問題がありました。それを掘り起こした後、私はログをよく見て、起動時にUnity 5.5.2に次のようなメッセージが表示されることに気付きました。 APIのバージョンが異なっていることを

Initialize engine version: 5.4.0f3 (a6d8d714de6f) Creating WebGL 1.0 context. Renderer: WebKit WebGL Vendor: WebKit Version: WebGL 1.0 (OpenGL ES 2.0 Chromium) GLES: 0

お知らせ:ユニティ5.4に比べ

Initialize engine version: 5.5.2f1 (3829d7f588f3) UnityLoader.js:2 Creating WebGL 2.0 context. Renderer: WebKit WebGL Vendor: WebKit Version: OpenGL ES 3.0 (WebGL 2.0 (OpenGL ES 3.0 Chromium)) GLES: 3

はメッセージを持っています。私がWebGL Playerの設定に行き、「その他の設定」で「Auto Graphics API」のチェックを外してWebGL 2.0のサポートを削除すると、Unityは元のAPIに戻ることができます。私はWebGL 2.0のためのこれを修正する方法を知らないが、少なくともあなたのビデオ作品を作る必要があります。

注:*これは、新しいAPIにアクセスする必要がないと想定しても十分な回避策です。誰かがより良い答えを得て、新しいAPIのコードを修正する方法を知っていることを期待しています。

+0

私はあなたにキスすることができます:Dありがとう、それは完璧に働いた。 Unityにバグとして報告しましたか?そうでない場合は、何かを提出します –

+0

私はそれをUnityに報告していません。フォーラムを通じて、Jonas(webglサンプル動画アセットの元の著者)に連絡することを検討していましたが、まだ何もしていません。ユニティからあなたが見つけたものを教えてください! –

関連する問題