読者です 読者をやめる 読者になる 読者になる

くらげになりたい。

くらげのようにふわふわ生きたい日曜プログラマなブログ。趣味の備忘録です。

Unity(Free版)でよく使うScript集 Rewrite

書いた記事のRewrite
メンテしやすいようにはてな記法からMarkdownに変更

オブジェクト関連

インスタンスを生成する(Instantiate)

# Instatiate(<プレハブのTransform>,<ポジション>,<ローテーション>)
var ef : Transform = Instantiate(mark, transform.position, transform.rotation);

オブジェクトの破棄

Destroy(gameObject);

階層の子要素に入れる

var ef : Transform = Instantiate(mark, transform.position, transform.rotation);
ef.transform.parent = gameObject.transform;

オブジェクトを取得する(GameObject.Find)

# GameObject.Find(<オブジェクト名>)
var obj : GameObject = GameObject.Find("MyObject");

暗黙オブジェクト:自分自身のオブジェクト(gameObject)

gameObject

コンポーネント取得

# .GetComponent(<コンポーネント名>)
# ex. オブジェクト(GameMaster)にあるコンポーネント(GameMasterScript)のメソッド(MyMethod)を呼び出す
GameObject.Find("GameMaster").GetComponent(GameMasterScript).MyMethod();

オブジェクトの表示/非表示

gameObject.renderer.enabled = true;   //表示
gameObject.renderer.enabled = false;  //非表示

ユーティリティ関連

乱数を生成する

# Random.Range(<最小値>, <最大値>)
var rand = Random.Range(0, 10);

Sceneの移動

var nextScene = "Scene2";
Application.LoadLevel(nextScene);

float->String時のフォーマット変換

# .ToString(<表示形式>)
# 小数点第2位まで表示の例
var time : float;
time.ToString("f2");

デバック出力

# Debug.Log(<表示文字列>)
Debug.Log("Debug");

アプリの終了

Application.Quit();

画面の幅、高さ

Screen.width
Screen.height

画面の端の座標

//画面の左上
var screenTL : Vector2 = Camera.main.ViewportToWorldPoint (new Vector2 (0, 1));
Debug.Log("screenTL" + screenTL);
//画面の右上
var screenTR : Vector2 = Camera.main.ViewportToWorldPoint (new Vector2 (1, 1));
Debug.Log("screenTR" + screenTR);
//画面の左下
var screenBL : Vector2 = Camera.main.ViewportToWorldPoint (new Vector2 (0, 0));
Debug.Log("screenBL" + screenBL);
//画面の右下
var screenBR : Vector2 = Camera.main.ViewportToWorldPoint (new Vector2 (1, 0));
Debug.Log("screenBR" + screenBR);

時間関連

フレームの数を取得する(Time.frameCount)

# Time.frameCount
if (Time.frameCount % 4 == 0 ) {} # 4フレームごとの処理の例

経過時間を取得する(Time.deltaTime)

# Time.deltaTime
var time : float = Time.deltaTime;

時間を止める

yield WaitForSeconds (1.0);

オーディオ関連

音を再生する

audio.Play();

その他

オーバーライドメソッド

  • Unity自体に定義されている関数一覧。
  • 勝手にオーバーライドメソッドって呼んでいるけどあっているのか。。。?
# オブジェクト生成時に一度だけ呼ばれる
function Start () {}

# 毎フレーム呼び出される
function Update () {}

# ボタンが押された時に呼び出される
function OnMouseDown () {}

#ボタンが離された時に呼び出される
function OnMouseUp () {}

あわせて読みたい

[PR] こんなアプリを作ってます

ボコボコリンリン♪

キャラクタを殴ってつぶしたり、釘でぶすぶす刺したりできるストレス発散ゲーム♪
いろんなキャラをボコボコにして、日頃の恨みを解消!!

Google Play

f:id:wannabe-jellyfish:20150214232225p:plain

マグロ探し

大量の鯖(サバ)の中から1匹の鮪(マグロ)を探す、シンプルなタッチゲーム☆彡
反射神経、周辺視野、正確なタッチが求められるカジュアルゲームです♪

Google Play

f:id:wannabe-jellyfish:20150214232203p:plain

四色漢字

赤・青・黄・緑の4色のボタンを、文字の色または漢字の読みの通りに押していく脳トレゲーム!
ストループテストという前頭葉の注意機能の検査をゲームらしくしてみました♪

Google Play

f:id:wannabe-jellyfish:20141006225511p:plain

参考にしたサイト様