2016-05-22 11 views
0

私のhtml5プロジェクトでthisフィルタ/シェーダを使用したいと思います。フィルタ/シェーダはリロード後にのみ動作します。 Phaser

問題はSafariとFirefox(chrome works meの場合)です。フィルタ/シェーダは、ページを一度リロードした後にのみ動作します。また、例のページにも同じ問題があります。私は最初にjQuery.get()で.fragファイルをロードしようとしましたが、最初の場所ではキャッシュ内のファイルを取得しましたが、成功もありませんでした。

これはなぜ起こっているのでしょうか?

EDIT:より良い理解のため :あなたがページを最初(キャッシュ内.fragファイルではありません)を訪問した場合

Shaderは、FirefoxとSafariにレンダリングされていません。空白(キャンバスのデフォルトの黒色/背景色)のキャンバスが表示されます

+0

あなたが持っているコードを提供すると、他の人があなたをより速く手助けするのに役立ちます。 –

+0

例のページにはコード – delueg

+0

があります。サンプルコードではjQueryを使用していません。 –

答えて

0

わかりましたように、スムーズな状態の変更が必要です。

各状態では、ゲーム画面に合ったシンプルな黒い画像を使用して、数秒でフェードアウトすることができます。

作成機能の最後に下記のスクリプトを追加する必要があります。このよう 、

create: function(){ 
    //your create codes here 

    blackScreen = game.add.sprite(0, 0, 'blackScreen'); 
      game.add.tween(blackScreen).to({ 
       alpha: 0 
      }, 500, Phaser.Easing.Linear.None, true); 

    } 

これはゲーム画面を変更/滑らかに開口部を処理するのに役立ちます。

+0

あなたの答えをありがとうございますが、それは問題ではありません...問題は、ユーザーがページを開いたときにキャッシュ内のアセットなしで初めてシェーダーファイルを意味するということです。シェイダーはロードされておらず、空のキャンバス – delueg

+0

がもう一度見てみるだけですか? – delueg

関連する問題