2012/07/29(日) [n年前の日記]
#1 [cg_tools] Texture Atlasについて調べてる
複数のpngファイル等を1つの画像に配置することで、GPUにとっては処理が楽になるらしいのだけど。そのへんの仕組み? 概念? を、
_Texture Atlas
と呼ぶらしい。えてして、1つになった画像と、どこに何のテクスチャが配置されているのか記述したxml、とのセットで使う模様。
Flash の2Dフレームワークである Starling も、それをサポートしてるようで。
一応、GIMP等を使って手作業で画像を配置して、xmlも自分で打って、とかやっていけば目的は果たせるだろうけど、ぶっちゃけ面倒臭い。画像修正するたびに作り直しなんて途方に暮れる。ので、ツールがあるなら使ったほうが、はるかに便利だろうとは思う。
Flash の2Dフレームワークである Starling も、それをサポートしてるようで。
一応、GIMP等を使って手作業で画像を配置して、xmlも自分で打って、とかやっていけば目的は果たせるだろうけど、ぶっちゃけ面倒臭い。画像修正するたびに作り直しなんて途方に暮れる。ので、ツールがあるなら使ったほうが、はるかに便利だろうとは思う。
◎ _TexturePacker - Create Sprite Sheets for your game! :
Texture Atlas 用の画像を作成できるツール。Windows/Mac/Ubuntu Linuxで動作する。Cocos2D,Starling,Unity等、様々なフレームワークに対応。それぞれに対応したxmlを出力してくれる、ということじゃないかと想像。
無料版と有料版があるように見えたので、無料版を試用してみたが、作業が圧倒的に楽になりそうだと感じた。
ただし、無料版は、Publish で画像出力した際に、画像の中に文字が書き込まれてしまうので、実際の開発作業には使えない。あくまで体験版の位置づけなのだと思う。
機能制限が無い有料版は、ライセンスが2千円台で購入できるそうで。言及しているblog記事を眺めた限りでは、この手のツールを欲してる人は軒並み購入してるように見えた。たしかに、得られるメリットを考えると、値段は安い。フツーはコレを買ってこの話は終わり、だろうと思う。
無料版と有料版があるように見えたので、無料版を試用してみたが、作業が圧倒的に楽になりそうだと感じた。
ただし、無料版は、Publish で画像出力した際に、画像の中に文字が書き込まれてしまうので、実際の開発作業には使えない。あくまで体験版の位置づけなのだと思う。
機能制限が無い有料版は、ライセンスが2千円台で購入できるそうで。言及しているblog記事を眺めた限りでは、この手のツールを欲してる人は軒並み購入してるように見えた。たしかに、得られるメリットを考えると、値段は安い。フツーはコレを買ってこの話は終わり、だろうと思う。
◎ _What is a sprite sheet? - The Movie :
Texture Atlas についての説明動画、なのかな。分かりやすい。
◎ _Texture Atlas Tools :
NVIDIAで公開されているツールらしいが…。Windows7 x64上にインストールしてみたけれど、ビューワと、コマンドラインで画像を連結出力するツールが入ってるみたい。
.taiファイルなるものを読み込むらしいが、エディタで開いてみたら、タブやスペースで情報が区切られたテキストファイルだった。
.taiファイルなるものを読み込むらしいが、エディタで開いてみたら、タブやスペースで情報が区切られたテキストファイルだった。
◎ _Texture Atlas Maker - CodeProject :
Javaで作られたツールらしい。試用してみようかと思ったら、ダウンロード時に、サイトへのメンバー登録を要求された。そーゆーのは面倒臭い。試用は諦めた。
◎ _bitorus - STAME - Simple Texture Atlas Map Editor :
Windows7 x64 上で動作確認してみた。どうやら手作業で各画像を配置していくツールらしい。
- グリッドにスナップされない。カーソルキー+目視で配置するのはツライ。
- 矩形領域を指定できるモードがあるらしいけど、ドラッグしても領域指定ができない。
- exportしても、xml内に配置情報が全く出力されない。
◎ _Sprite Sheet Packer :
Windows上で動作するツールらしい。
各画像内の無駄な余白について、TexturePacker のようにトリミングしてくれる機能は無いので、リストに登録する前に、自分で無駄な余白を無くす等しておかないといけない。
- 画像ファイルをD&Dするとリストに登録される。
- Image Padding は、余白をどれだけ取るかの指定。
- Require Power of Two Output は、出力画像サイズを2のべき乗(128,256,512,1024等)にするか、という意味じゃないかと思うけど自信がない。
ball = 0 514 64 64 ball_red = 0 0 512 512 ball_red_small = 514 0 64 64 ball_red_small_2 = 580 0 64 64 chara = 514 66 64 64 chara2 = 0 580 64 64おそらくは、元画像ファイル名 = x y w h が並んでいるのかな? たぶん。PerlやRubyでxmlに整形出力すれば、使えるのかもしれない。
各画像内の無駄な余白について、TexturePacker のようにトリミングしてくれる機能は無いので、リストに登録する前に、自分で無駄な余白を無くす等しておかないといけない。
◎ _Texture Atlas Utilities | GIMP Plugin Registry :
GIMP用スクリプト。メニューの、画像 → Texture Atlas に項目が追加されるのだけど。Add Image Layers To Atlas... を選んでもエラーが出る。使い方がさっぱりわからない。
[ ツッコむ ]
以上です。