UnityをC#で超入門してみる #2 ゲームオブジェクトの章
http://qiita.com/hiroyuki_hon/items/5211a1853647eee38d51
の続きです。
#目次 超入門#3 計算の章
演算・制御・配列・ランダム・比較
###C#の文法
演算、制御してみよう
値が同じかを調べる
配列を試してみよう
配列からランダムに取りだそう
時間を表示しよう
###mathfクラス
ランダムを生成しよう
べき乗(指数)を計算しよう
円周率をもとめよう
大きい方を返す、小さい方を返す
C#の文法
#演算、制御してみよう
スクリプト内はもちろん、Debug.Log内でも四則演算が可能です。
- 足し算
- 引き算
- かけ算
/ 割り算
% 余りを出します
##値が同じかを調べる
こちらは比較の結果が返されます。
このように演算子を使うことが可能です。
if文なりを書くことも出来ます。
int i = 10;
int j = 20;
int k;
void Start () {
k = i + j;
print(k);
if(k == 30)
print("Kは30");
else
print("それはない。");
}
こうすると kは30 がコンソールに出ます。
for文なりなんなりも当然に効きます。
for (int m = 0 ; m < 5 ; m++)
print(m + 1);
#配列を試してみよう
C#の配列は以下のようになります。
型名[] 配列名 = new 型名[要素数];
void Start () {
int[] arr = new int[3];
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
Debug.Log(arr[0]);
Debug.Log(arr[1]);
Debug.Log(arr[2]);
}
public class ListTest : MonoBehaviour
{
//リストの生成
public System.Collections.Generic.List<string> ListNameString;
public System.Collections.Generic.List<int> ListNameInt;
//Inspectorに名前がListNameXのリストが現れる。
//サイズを指定して、中もインスペクターで生成できる。
//例:Size3として 1,2,3と入れた場合。
//例:Size2として、test1,test2と入れた場合。
void Start ()
{
ListNameInt.ForEach(text => print(text));
//出力: 0,1,2
ListNameString.ForEach(text => print(text));
//出力: test1,test2
}
}
##配列からランダムに取りだそう
for (int i = 0 ; i < 5 ; i++)
{
int seisuu = Random.Range(0, 3);
int[] arr = new int[3];
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
Debug.Log(arr[seisuu]);
}
#時間を表示しよう
単純に経過時間を出す。 Time.time
print(Time.time);
##mathfクラス
#ランダムを生成しよう
Random.value;
Random.Range(x, y); を用いる。
//乱数を生成する
void Start () {
for (int i=0 ; i<5 ; i++)
{
float x = Random.value;
Debug.Log(x);
}
//レンジをきめて乱数を生成する
for (int i=0 ; i<5 ; i++)
{
float y = Random.Range(2.0f, 3.0f);
Debug.Log(y);
}
//整数の乱数を生成する
for (int i=0 ; i<5 ; i++)
{
int seisuu = Random.Range(0, 9);
Debug.Log(seisuu);
}
}
#べき乗(指数)を計算しよう
Mathf.Pow を用いる。
print(
Mathf.Pow(3, 2));
//出力:9
#円周率をもとめよう
Mathf Namespace: UnityEngine から
Mathf.PI を使います。
参考 http://docs-jp.unity3d.com/Documentation/ScriptReference/Mathf.PI.html
float pi = Mathf.PI;
Debug.Log(pi);
で、コンソールに
3.14159274101257
UnityEngine.Debug:Log(Object)
となります。
#大きい方を返す、小さい方を返す
大きい方を返す Mathf.Max();
print(
Mathf.Max(1.2F, 2.4F));
//出力:2.4
小さい方を返す Mathf.Max();
print(
Mathf.Min(1.2F, 2.4F));
//出力:1.2
#つづきます
UnityをC#で超入門してみる #4 GUIの章
http://qiita.com/hiroyuki_hon/items/af0a52c1cb9e856f32b2