Asepriteはドット絵を描くのに非常に便利なツールで、特にグラデーションの描画だったりアニメーションの作成が非常に便利に感じています。
しかし、Asepriteの唯一とも言える(?)問題点が、
(簡単には)レイヤーごとのpng書き出しができないということ。
フレームごとの書き出しはできるのに、なぜレイヤーごとの書き出しはできないのでしょうか。。。
今回はAsepriteで複数レイヤーに描いた画像を、レイヤーごとに、透明部分はトリミングして書き出す方法をご紹介します。
レイヤーごとに書き出す方法
まず、ツールのGUIにはどれだけ探してもレイヤーごとに書き出すオプションは存在しません。
アップデートで実装してもらいたいところですが・・・
v1.2.16時点では不可能なようです。
それではどうやってエクスポートするかというと、ターミナル(コマンドラインツール)を使います。
ターミナルを起動し、以下のコマンドを入力します。
【Macの場合】
$ [Aseprite.appまでのパス]/Contents/MacOS/aseprite -b --split-layers [書き出すasepriteファイルのパス(.aseprite)] --trim --save-as [書き出し先のディレクトリのパス]/{layer}.png
【Windowsの場合】
$ [Aseprite.exeまでのパス] -b --split-layers [書き出すasepriteファイルのパス(.aseprite)] --trim --save-as [書き出し先のディレクトリのパス]/{layer}.png
これだけで、Asepriteのプロジェクトからレイヤー別にpng画像に書き出すことができました!
ちなみにコマンドの「–trim」がレイヤーごとの透明部分を削除(トリミング)して書き出しするオプションで、もし透明部分をトリミングしたくない場合はこのオプションを指定せずに実行してください。
コマンド実行時にエラーが出る場合
コマンド実行時に、以下のエラーが出る場合があります。
gui.xml was not found
このエラーは[Aseprite.appまでのパス](Windowsの場合は[Aseprite.exeまでのパス])のミスが原因で起こります。
この[Aseprite.appまでのパス]には、Applicationsディレクトリ内などにコピーしたAseprite.appではなく、
/Users/xxxxxx/Library/Application\ Support/Steam/steamapps/common/Aseprite/Aseprite.app
のようにLibraryディレクトリ以下にあるAseprite.appを指定してください。
これで大丈夫なはずです。
コメント