2016-11-22 6 views
0

私の目標私が描くことができるゲームキャラクターを作成し、新しいアーマーのアニメーションを作成できるようにすることです。私はフラッシュ1のオブジェクトを描画し、フラッシュは私のプレマイドアニメーションでそのオブジェクトをアニメーション化します。その後、私はスプライトシートに提供されたフレームをペーストして、それをアニメーション化する私のゲームで構築したアルゴリズムに貼り付けます。だから私が今持っています要約、唯一の1フレームを描画し、自動的にJavaが読み込みスプライトシートにそれと場所のフレームをアニメーション化します。スマートで速いスプライトシートを作成する

のみ問題を効率的スプライトシートを作成しています。もちろん私のスプライトシートのサイズは128x128か256x256のいずれかになります。スプライトシートを効率的に作成するにはどうすればよいでしょうか?フラッシュ用のスプライトシートは、設定された四角形を作成するのではなく、画像サンプルのサイズに応じて126x86などのサイズに分割するため、スプライトシートには適していません。私が今考えている最良の方法は、個々の部分を手動で貼り付け、自分が正しく配置されていることを確認してから、枠線を消去することです。それが私の目標ではありませんが、私は自分のキャラクターのために新しい鎧を作ることになると、すばやく最小の努力をしたいと思います。

私はフラッシュスプライトシートジェネレータを間違って使用していますか?おそらく、私が作成する最良の方法は、のセットサイズの高速スプライトシートでしょうか?これを読んでいただきありがとうございます。すべての回答が参考になります。

ここでは、スプライトシートを生成するときにフラッシュが行う画像を示します。問題は非常に白いスペースがあるにもかかわらず、それはかなり良いように見えます。その作品は私が持っている128x128の正方形全体に均等にレイアウトされていません。彼らは幅の約2/3を取る。

enter image description here

答えて

1

は、あなたが実際にはspritesheetにフレームを正方形にスティックにはありません。通常の方法はスプライトシートイメージを最適化することで、レンダリングコンテキストに効率的に格納してアップロードすることができます。この方法では、空の領域をトリミングし、効率的な順序で(アニメーションと同じ順序である必要はない)、フレームをまっすぐに回転させて、アニメーションのフレームをしっかりとパックします。これにより、より小さなテクスチャを保存することができます。もちろん、これらの最適化のいずれかを使用する場合は、テクスチャとともにマッピングデータを保存する必要があります。データを読み込んでアニメーションのフレームを適切に表示し、テクスチャに平行移動や回転を適用するコードが必要になります。

既存のフォーマットとライブラリがあります(下記のビデオをご覧ください)。アニメとは別に、a number of toolsもあり、スプライトシートを生成し、テクスチャを最適化します(実際にそれらの読み込み)。また、AnimateでフルフレームのPNGシーケンスを生成し、Animateの内容に満足できない場合は、別のツールを使用してスプライトシートをパックすることも考えられます。スプライトシートを作成する方法は、(すなわちStage3D)を使用するディスプレイエンジンに結びつくのではなく、結果のテクスチャを扱うために使用するライブラリです。

There's a video adobe animate spritesheetsを説明します。 2:50から、データフォーマットとトリミングについて説明しています。 アニメーションを使用してフルフレームのスプライトシートを作成することができます。スプライトアニメーションの再生にライブラリを使用する必要はありませんが、より大きなテクスチャを保存し、Stage3Dの2048x2048テクスチャサイズの制限を満たさない場合があります。

関連する問題