ちょこ

学生です。メモっぽく。

Unity 3Dゲーム開発 ~シリアスゲーム~

講義で役に立つインタラクティブシリアスゲームを作っている。
ほぇ~と思ったことをめっちゃ簡単に書く。

ArrayListは使わない。

Javaのプログラムを組んでいて動的配列を作るときに結構使っていたArrayList
Unityで使うことはないだろう。
どうやらジェネリックリストというものを使うのが一般的?らしい。
using System.Collections.Generic;を記述して、
List<>みたいにあとはArrayListと同じ感じに使えた。

最も近いオブジェクトの取得


【Unity】指定されたタグの中で最も近いオブジェクトを取得する - B-Teck!
参考にさせていただきました。

private GameObject nearbyObj;
nearbyObj = GetNearbyObj(gameObject, "Enemy"); //GetNearbyObjという関数を使って一番近いオブジェクトを持ってくる。
GameObject GetNearbyObj(GameObject nowObj, string tagName){
    // .FindGameObjectWithTagで取得。
    // 配列全部見て近いやつを入れていくのをforeachで書くやつ。
}

って感じでやった。

SQLiteを使ってデータベースとのやり取り。

をした。

ランダムで1件持ってくるやつ。

SELECT * FROM TABLE ORDER BY RANDOM() LIMIT 1;

Unity4.6のUI

いい感じ。

ボタンクリックしたときの設定

Scriptに

public void ButtonClick(){
}

とか加えて、
ButtonのInspectorビューの下のほうにOn Click()ってのを、
書いたScriptあるオブジェクト?Canvasとか選んで、
ButtonClick選ぶ。

Rect Transform

Inspectorビュー。
UIの大きさ変えるところ。
PosXとかPosYとか書いてるところをドラッグするのでも大きさ変えれてどんくらいがいいかなーってできる。
Pivotは中心点みたいな。

InputField

using UnityEngine.UI;
public InputField inputField;

inputField.textで入力した文字取得できる。代入もできる。

Text

Textも同じ感じでtext.textで色々できた。

2DゲームのほうScriptでバリバリ書いてるけど、4.6のUIを使って作り直そうかなという感じ。

GameObject


Unity - Scripting API: GameObject
完全に自分のメモ用に貼付けたかった。
CompareTagでタグが比較できること知らなかった。
ドキュメントちゃんと読むの大事だ。

Rigidbodyの現在の移動速度を求める。

rigidbody.velocity.magnitude
止まったときの判定とか移動速度の上限とかで使うと思う。