Quantcast
Channel: C#タグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 8895

Unityのゲーム製作で使えるC#コードまとめ

$
0
0

はじめに

ゲームでよく使うものをまとめました。半分自分用です。たまに自分でも忘れるので…

目次

・クリックで動作させる。
・キー操作で動作させる。
・衝突判定をつける。
・タグをつけたオブジェクトの数を数える。
・オブジェクトを生成する。
・オブジェクトを破壊する。
・複数回処理をする。
・座標を指定して移動させる

クリックで動作させる

if ( Input.GetMouseButtonDown(0) )
{
処理
}

0なら左クリック1なら右クリックです。
3はホイールクリック、マウスによっては4,5…と続きます。

キー操作で動作させる

 if (Input.GetKey(" "))
{
処理
}

" "の中は設定したいキーです。

aキーなら

 if (Input.GetKey("a"))
{
処理
}

となります。

衝突判定をつける

void OnCollisionEnter(Collision collision)
{
     if (collision.gameObject.tag == "")
     {
     処理
     }
}

" "の間はタグ名

そのタグをつけたオブジェクトに当たった時に処理が行われます。

どちらかのオブジェクトにisTriggerがついている場合は、

void OnTriggerEnter(Collider collision)
{
     if (collision.gameObject.tag == " ")
     {
     処理
     }
}

となります。

タグをつけたオブジェクトの数を数える

private GameObject[] ~~;

void Update()
{
     ~~ = GameObject.FindGameObjectsWithTag(" ");
     print(~~.Length);
}

~~の部分は好きな名前でOKです。

private GameObject[] ~~;で数えたいものを指定しておいてUpdateでタグを指定して数えています。
if (~~.Length <= 20){処理}と書けばタグがついたオブジェクトが20個以下の時だけ処理を行えます。

オブジェクトを生成する

public GameObject ~~;

Instantiate(~~, transform.position, transform.rotation);

~~は好きな名前で。

public GameObject ~~;で使いたいオブジェクトを指定。
Instantiate(~~, transform.position, transform.rotation);でそのオブジェクトを呼び出し。

座標を指定して移動させる

transform.position = new Vector3( ,  , );
transform.rotation = new Quaternion( , , , );

()の中は座標と回転です。

new Vector3( 0, 0, 0);なら原点です


Viewing all articles
Browse latest Browse all 8895

Trending Articles