今回はゲームで必須のパーティクル生成とNGUIの関係に関する記事。一般にNGUIはパーティクル生成を標準的にはサポートする機能がないけど
http://www.tasharen.com/forum/index.php?topic=393.0
August 08, 2012, 03:47:08 AM
質問
NGUIでメニューを作るのは向いているけど、パーティクル生成とメニューに連結してないスプライトに活用する使い方はアリですか?
作者回答
理屈上はAtlasテクスチャ(スプライト)の一部しか使用しない複製されたマテリアルをパーティクルい使うことは可能だね。
だけど今はマテリアルのUVオフセットを自分で指定しないといけない。でも出来ることは出来る。
フォーラムのディスカッション
新米Aさん
自分ではNGUI描画で全部のパーティクルや効果にいているけど、何も問題はないね。良いのは1Draw Callで出来る
ってところ。画面に何千っていうパーティクルを描いたとしてもね。
考慮すべきはDepthのソート方法。もしオブジェクトの前か後ろに表示したい場合は複数のパネルが必要になってくる。
自分で作成してるシーンはアーケードボードゲームなので静的(Static)だから3パネルのみに抑えられている。1つが前、1つが後ろ、1つがUI。
他に考慮すべきはAtlasの個数。これはマテリアルがどんな種類かによって作成が必要な数が決まってくる。
常連Cさん:
自分のゲームは別のtk2dライブラリで使いたいパーティクル・効果を描いている。気になるのはNGUI作者自身がパーティクル向きにエンジンを作成しているかどうか。現時点では玉石混淆ってところだけど、NGUIが本当にイケていることを鑑みてもNGUIでパーティクル・スプライト・メニュー
全部に活用することは検討してる。
新米Bさん:
実際どうやってやるの?Draw Callは是非減らしたいけど?
常連Cさん:
それはやり方が一杯あってひとことでは言い表せない。だけどUnityのパーティクルシステムはパーティクルごとにDraw Callを必要としてるものの、シーンの3次元空間に含まれているものなんだ。
一方でNGUIでパーティクルを作成するってことはゲームに2次元空間で表面に乗せることになる。ボクが作るならコードを全部書いて特定パーティクルのイメージを画像から引っ張ってきて同じコードのなかで3次元座標のどこにマップするからトラッキングするクラスを作るね。
何をいっているかサッパリっていうならUnityのパーティクルシステムを使ったほうが楽チンだし、それもいいと思うね。
----------
今回は作者コメントよりもフォーラムの常連さんコメントが気になったところ。
NGUIは2Dだからパーティクルも2次元なのはそれは当たり前。だけどそれが自分のゲームに合うか?うーん、自分にはサッパリ分からん。
Depthが関係ないなら行けるのかな。
色々実験してみようぜ! NGUI!
0 件のコメント:
コメントを投稿