こんにちは、何か聞きたいことがあります。Flash CC と createJS でゲームを作成しました。これはドラッグ アンド ドロップ ゲーム (ドラッグ用に 3 つのオブジェクト、ドロップ用に 3 つのオブジェクト) であり、多くのベクター ムービークリップ オブジェクトです。しかし、モバイルで実行すると、ゲームにパフォーマンスの問題があるように見えます。caching
オブジェクトについて説明している記事を読みました。しかし、私は本当に何もcache
知らないし、ムービークリップのようなオブジェクトでそれを使用する方法も知りません. cache
説明や解決策、または関数の使用方法のチュートリアルはありますか? どうもありがとうございました。
1 に答える
ドキュメントから:
表示オブジェクトを新しいキャンバスに描画し、それを後続の描画に使用します。頻繁に変更されない複雑なコンテンツ (例: 移動しない多くの子を持つコンテナー、または複雑なベクトル Shape) の場合、コンテンツをティックごとに再レンダリングする必要がないため、レンダリングが大幅に高速化されます。キャッシュされた表示オブジェクトは自由に移動、回転、フェードなどを行うことができますが、コンテンツが変更された場合は、updateCache() または cache() を再度呼び出してキャッシュを手動で更新する必要があります。x、y、w、および h パラメータを介してキャッシュ領域を指定する必要があります。これは、この表示オブジェクトの座標を使用してレンダリングおよびキャッシュされる四角形を定義します。 http://createjs.com/Docs/EaselJS/classes/DisplayObject.html#method_cache
そのため、再生中の MovieClip をキャッシュする必要はありません (フレームごとにキャッシュを更新する必要があり、これは低速です)。ただし、変換されたばかりの要素を MC にキャッシュすることはできます。
たとえば、歩行アニメーションを作成するために変換 (スケーリング、回転、移動) される腕、脚、頭、および体の複雑なベクトル形状を持つ歩行キャラクタのアニメーション。キャラクターの MC はキャッシュしませんが、ボディ パーツ自体はキャッシュできます。