2016-07-01 5 views
0

私は現在このゲームで取り組んでおり、画像の読み込みに問題があります。または、私は「ディスローディング」と言うべきですか?どのようにフェイザー:画像ファイルを変更する

私はこの画像ファイル 'circle'を持っていました。この画像ファイルを使ってスプライト 'ball'を作成しました。私はこのファイル 'circle'を削除し、新しいファイルを入れて 'circle'に名前を変更しました。基本的に、私はそれを置き換えました。

しかし、自分の仕事を保存してゲームをリフレッシュすると、自分のアセットフォルダにはいなくても古いファイルが使用されます。ファイル名を 'circle1'のようなものに変更すると、突然再び動作します(新しいイメージがロードされていることを意味します)。そして、私が「サークル」に戻ったとき、それは古いイメージに戻ります。

game.load.image('circle',  'assets/circle.gif'); 

P.S.私は自分のコンピュータと私のMAMPサーバーを再起動しようとしました。

答えて

1

これは、ブラウザがアセットをキャッシュするために発生します。基本的には、ブラウザはまずキャッシュを調べ、この名前のURLとこのURLが既に存在していることを確認し、サーバーに切り替える必要がないと判断して古いファイルを表示します。ブラウザのキャッシュをクリアすると、新しいファイルが表示されます。 「

var version = 1; 
game.load.image('circle', 'assets/circle.gif' + '?' + version); 

とをversionを変更:

ビューのフェイザーの視点からこの問題を回避するには、ファイルへの単純なバージョンを追加することですので、代わりの

game.load.image('circle', 'assets/circle.gif');は、

次のことはありませんアセットを変更するたびに値が変更されます。

+1

ありがとうございます。ここに私が見つけたものもあります。シークレットモード(シークレットモード)で開くと、キャッシュファイルは保存されず、毎回イメージが更新されます。 –

0

しばらく時間がかかりました。 (まだ分かりません)

イメージで新しいスプライトを作成すると、新しいイメージファイルですべての古いスプライトが置き換えられます。どうしてか分かりません。あなたがこれを修正する理由または正確な方法を知っているなら、私に説明してください。

関連する問題