C#
Unity3D
Unity

UnityをC#で超入門してみる #3 計算の章

More than 5 years have passed since last update.

UnityをC#で超入門してみる #2 ゲームオブジェクトの章

http://qiita.com/hiroyuki_hon/items/5211a1853647eee38d51

の続きです。


目次 超入門#3 計算の章

演算・制御・配列・ランダム・比較


C#の文法

 演算、制御してみよう

  値が同じかを調べる

 配列を試してみよう

  配列からランダムに取りだそう

 時間を表示しよう


mathfクラス

 ランダムを生成しよう

 べき乗(指数)を計算しよう

 円周率をもとめよう

 大きい方を返す、小さい方を返す


C#の文法


演算、制御してみよう

スクリプト内はもちろん、Debug.Log内でも四則演算が可能です。


  • 足し算

  • 引き算

  • かけ算
    / 割り算
    % 余りを出します

このように書きます。

スクリーンショット 2014-01-03 2.02.13.png

計算結果で返されます。

スクリーンショット 2014-01-03 2.11.26.png


値が同じかを調べる

スクリーンショット 2014-01-03 2.15.38.png

こちらは比較の結果が返されます。

スクリーンショット 2014-01-03 2.18.11.png

このように演算子を使うことが可能です。

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