2012年3月30日金曜日

maya アルファ付きテクスチャマッピング

mayaアルファ付きテクスチャマッピング
http://www.ngc.co.jp/faq/answer/rendering/012.html

コネクションエディタから行う。

2012年3月4日日曜日

unityでスプライト【QuadUI】

魚拓です。。。

【Unity】にわとりを集めるゲームを開発してみる2

Unity[http://unity3d.com/japan]
QuadUI[http://blog.equals-equals.com/quadui]
SpriteManager[http://www.unifycommunity.com/wiki/index.php?title=SpriteManager]
作成中のゲーム(最新版)[にわとりゲーム」 ルールはまだない!!!!!

今回の更新では、背景のスクロールを入れたのと
お邪魔キャラとしてさまざまなトラップがあるのでそれの管理処理を作成しました。
まだゲームの体をなしてはいません(笑)。

トラップ1セットでひとつのPrefabを作成して、それをランダムでひとつ作成するような仕組みにしています。
それをエネミー管理オブジェクトの子として作成し、エネミー管理オブジェクト側からトラップ処理の終了待ちを監視し、終了次第、次のトラップを作成する流れになっています。
このゲームは「プレイヤー」「トラップ(敵)」「仲間キャラ」の3要素しかないですが、まずはトラップのシステムが完成しました。
次はプレイヤーの入力操作周りを作成して行こうかと思っています。

そういえば個人的に結構お世話になっているQuadUIについて何の紹介もしていなかったのでこの場で少し紹介します。

QuadUIですが、主にボタンやトグルなどのメニュー系UI向けのフリーのミドルウェアで
ドローコールの回数を抑えてたスプライト機能を提供してくれます。
以前の記事でも書きましたがGUITextureはドローコールが多く、これでUIを組むとスマホでかなりパフォーマンスが落ちるので
スマホを考慮する場合は代替となるスプライト機能を使用する必要が出てきます。
QuadUIやSpriteManagerはその中のひとつです。

導入方法はこんな感じになります。
1.記事のトップのQuadUI公式サイトからQuadUIパッケージを落としてきてそれをインポート
(GetTheBetaをクリックすれば落とせます2012/02/03現在)
2.アルファチャンネルでアルファを指定した画像データを新規で作成したMaterialに設定する
3.MaterialのシェーダーをQuadUI->2DBackfaceCulledに設定
20120203_00.png 
4.メニューのWindow->QuadUI Editerを選択
5.Cameraタブを選んで、Generate 2D Cameraを選択
自分の場合はこんな感じ、CullingMaskで設定したレイヤーが2DCameraでの表示対象になるので
Spriteなどのレイヤーを追加してそれを割り当てると便利です。
20120203_01.png 
6.2DCameraのCameraのDepthを設定してあげる
20120203_02.png 

後は、Sceneビューでカメラの領域が視覚化されているので
その領域内にオブジェクトを配置してあげれば表示されます。

ちなみにスプライトを作成する場合はこんな流れ
1.QuadUI EditerのQuadタブを選択してMaterialの項目に、先に作っておいたMaterialを設定
2.各種パラメータを設定
PivotPointが画像の中心点の位置の設定、
Calssにはいろいろありますが、アニメーションがある場合はSpriteを、ない場合はNoneにしておけば問題がありません。
また、Spriteに設定した場合はFrameごとにuvを指定してあげる必要があります。
uvを指定する際には、Editer右側にあるツール(↓の画像)を使用すると便利です。
20120203_03.png 
上から選択範囲、範囲移動、拡大、縮小、アルファチャンネル、選択範囲をグリッドにクリップ、です。
クリップ機能を使うと指定が簡単です。グリッドのサイズを変える場合はSettingsタブのGridSizeで設定できます。
3.Bake!をクリックするとProjectのPrefabsフォルダ内にプレハブが作成されHierarchyにオブジェクトが追加されます。
4.先程作った2DCameraの領域内にオブジェクトを配置すれば画面に表示されるようになります。

これで一応表示がされます。
他にもQuadUIは、QuadUIコンポーネントを使用することでスクリーンサイズのリサイズに合わせて
カメラの設定を変えてくれる機能があったりしてWebPlayerで作る際には結構便利だったりしますが
そのあたりはまた後ほど紹介しようかと思います。