[[勉強会]]
*第一回ミニ勉強会 [#a3216901]
**ソースコード [#qc32761a]
https://github.com/nyarurato/Crage_benkyoukai/tree/master/1/test_project

ダウンロードしてインポートすれば使えるはず

**参考資料 [#q1a78fdd]
東京渋谷 unity 勉強会のスライドを参考にしました。~
http://tonosamart.com/blog/unity-2011-11-26/

**やったこと [#n255553f]
-Unityの基本操作など
-Unityのスクリプトの書き方
-Asset Storeの使い方

***具体的内容 [#y9dbf44e]
-参考資料のスライドを見る
-Sceneを移動するスクリプト~
build settings確認すること。
#geshi(csharp){{
//Application.LoadLevel (intかstring)
Application.LoadLevel ("gameover");
}}

-Debug.Log~
いろいろな確認とかによく使う~
#geshi(csharp){{
Debug.Log("ok");
}}
-GUI
#geshi(csharp){{
void OnGUI(){
	button = GUI.Button (new Rect (0, 0, 100, 30), "onoff");
}
}}

-時間関係
#geshi(csharp){{
Time.time;//始まってからの時間
Time.deltatime;//1フレームの時間
}}

-当たり判定
--rigidbodyを使っている時
#geshi(csharp){{
void OnCollisionEnter(Collision other){
	//ぶつかってきた物の名前表示
	Debug.Log (other.gameObject.name);
}
}}
--Collidarを使っての判定~
CollidarのコンポーネントのIs Triggerにチェックを入れる~
オブジェクトを透明にすれば、イベント開始などのトリガーとして使えるね
#geshi(csharp){{
void OnTriggerEnter(Collider other){
	if (other.gameObject.tag.Equals("myks")) {
		Application.LoadLevel ("gameover");
	}
}
}}

-タグ~
Inspectorビューで変更可能~
#geshi(csharp){{
gameObject.tag;
}}
スクリプトから取得可能

-prefab~
HierarchyビューからProjectビューにドラッグアンドドロップ。~
#geshi(csharp){{
Instantiate (pepo_prefab, gameObject.transform.position, Quaternion.Euler (90, 90, 90));
}}
量産可能

-入力~
project settingsのInput確認~
--前後左右
#geshi(csharp){{
if (Input.GetButton ("Horizontal")) {
	gameObject.transform.position += new Vector3(0,0, keisuu*Input.GetAxis("Horizontal"));
}
if (Input.GetButton ("Vertical")) {
	gameObject.transform.position += new Vector3(keisuu*Input.GetAxis("Vertical"),0,0);
}
}}
GetなんちゃらDown-->押した瞬間~
Getなんちゃら-->押してる間~
GetなんちゃらUP-->離した瞬間~

--KeyCode指定~
#geshi(csharp){{
if(Input.GetKeyDown(KeyCode.Space)){
}
}}

-スクリプトからComponentにアクセス~
#geshi(csharp){{
//コンポーネントのオンオフ操作
//この場合はMuteをオンオフでも似たような感じになる
//汚い
gameObject.GetComponent<AudioSource>().enabled =!(gameObject.GetComponent<AudioSource>().enabled);
}}

-Destroy~
時間指定可能~
#geshi(csharp){{
Destroy(gameObject,10f);
}}

-複数のカメラ切替~
カメラのGameObjectそのものをオンオフする?~
--カメラ2個の場合
#geshi(csharp){{
if(Input.GetKeyDown(KeyCode.Space)){
	camera2.SetActive(is_camera1_on);
	camera1.SetActive(!is_camera1_on);
	is_camera1_on = !is_camera1_on ;			
}
}}
GameObjectそのもののオンオフはSetActive()を使う
--カメラが3〜の時~
ゴリゴリと書くしかない?

-AssetStoreの使い方~
AssetStoreを開く、ログイン、ダウンロード、インポート~


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS