今回はUnityプログラミングの応用編として優良なプログラミングチュートリアルのポイント解説部分の翻訳を行う:
http://catlikecoding.com/unity/tutorials/graphs/
チュートリアルを進めながらC#を応用してより複雑なグラフ作成を行う。
・グラフ作成を行い、線の作成から体積の表現まで行う
・パーティクルシステムを制御する
・数学的な関数を作成する
・実行中に動作変更を行う
・StartおよびUpdateのUnityイベントメソッドを用いる
・ループをネストされた場合とそうでない場合で用いる
・配列、列挙体、デレゲートを用いる
ポイント解説
Startはどのタイミングで呼び出しされる?
コンポーネントが作成され、アクティブとなり、Updateが初回の動作を行う前にStartは呼び出しされる?
配列はどのように用いる?
配列は固定長のオブジェクトであり、複数の連続した変数を取り扱う。変数宣言をする際に[]を後に記載することでその型での配列を表す。たとえばint myVariable;は整数を表しint[] myVariableは整数の配列を表す。
実際に配列のある変数にアクセスするためにはインデックス(何番目かではなく)を[]の中に記載する。たとえばmyVariable[0]で配列の最初のエントリを取得することが出来、myVariable[1]で二つ目のエントリ、といった要領で取得する。
実際に配列を作成し変数を割り当てる場合はmyVariable = new in[10];といったように記載し、10個のエントリからなる新しい配列が作成される。別の方法としてmyVariable = {1, 2, 3};というように初期値をあらかじめ設定することも出来る。
ParticleSystem.Particleとは?
ParticleSystem.Particleとはパーティクルのデータを保持する構造体である。型の中にドットがあるためネストされていることが分かる。パーティクル(Particle)型はParticleSystem型の中で定義されているためParticleSystem.Particleとしてアクセスする。
注意すべき点としてParticleSystemの中にないParticleも存在するが、その場合の型はShurikenパーティクルシステムが使用できない。
forループはどのように用いる?
forループにより繰り返しの動きを記載できる。この場合では整数iを反復する変数として用いる。第1部分で変数を宣言し、第2部分でループのクリア条件をチェックし、第3部分で変数をインクリメントする。
whileループを用いてまったく同じ結果を得ることはできるが記載方法として{}で括る範囲が異なる。
for(int i = 0; i < 10; i++) { DoStuff(i); } と同じ記載をするためには: int i = 0; while(i < 10) { DoStuff(i); i++; }
i++はどのような働きをする?
++演算子により変数は1つだけインクリメントされる。++表現を先に記載することで保持する値をあらかじめインクリメントすることが出来る。例として:
int x = 0; int y = 10 + x++; →xが1, yが10となる
int x = 0; int y = 10 + ++x; →xが1, yが11となる
--は減算する場合に同様に用いることが出来る。
-----
第2回ではポイント解説の続きを翻訳します。
プログラミングを応用することでゲームに磨きをかけるぞ!!
0 件のコメント:
コメントを投稿