Entries

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
この記事にトラックバックする(FC2ブログユーザー)
http://hizuoka.blog41.fc2.com/tb.php/11-9fabed7a

トラックバック

コメント

コメントの投稿

コメントの投稿
管理者にだけ表示を許可する

Unity3Dメモ2

Unity Game Development Essentialを読んで、メモったことを公開していきます。
注:一切まとめてません。これを元に情報をまとめて別サイトで公開してくださるのは大歓迎。
  C#を使うことを基本にして書いてます。適宜読み替えてください。


・ScriptをInspectorパネルから見ると、最初の変数が必ず「Script」となっている。
 この変数を別のScriptに変えることで、Scriptを削除(右クリック→Remove Component)
 せずにScriptを変更できる。このとき、変更元と変更先のScriptが同じ変数を持っていれば、
 その変数の値は保持される。

・Scriptを作成しても、HierarchyパネルにあるGame Objectに付加しないとアクティブにならない

・変数をstaticで宣言すると(static float aaaなど)、クラス名.変数名でどのScriptからも
 アクセスできる。


・ローカル座標をグローバル座標に変換するには、
 transform.TransformDirection(Vector3 position)
 を使用する。

・GetComponent(typeof(コンポーネント名))を使うと、
 スクリプトが所属しているGame Objectが持つコンポーネントにアクセスできる。

・CharactorController.Moveは、collisionFlagsを返す。
 ※ 他のColliderと違って、上面・側面・下面いずれに当たったかを判別できる。
  ColliderFlags.None、ColliderFlags.Above、ColliderFlags.Sides、ColliderFlags.Below
  例) if(collisionFlags & CollisionFlags.Below != 0){


・Ray Castingは、銃弾の当たり判定などに使用される。
 線分と、Colliderの衝突判定を行う。Colliderとは違い、当たっても相互作用は働かない。
 Physics.RayCast(Vector3 pos, Vector3 forward, RayCastHit hit, float length)
  posは、線分の開始位置。forwardは、線分の向き。lengthは、線分の長さ。
  hitは、衝突判定の結果(RayCast側でセット。呼び出すときはnullでよい)

・Colliderを、Mesh Filter(=ポリゴンモデル)を持つGame Objectに追加すると、
 自動でモデルの形に合ったColliderを作成してくれる。

・OnColliderControllerHit(ControllerColliderHit hit)は、
 CharacterControllerがColliderと衝突したときに呼ばれる。

・OnTriggerEnter(Collider collisionInfo)は、
 ColliderがtriggerモードのColliderと衝突したときに呼ばれる。

・OnCollisionEnter(Collision collision)は、
 triggerモードでないCollider同士が衝突したときに呼ばれる。


・他のGameObjectを参照するときは、FindWithTagの方がFindより速い。
スポンサーサイト
この記事にトラックバックする(FC2ブログユーザー)
http://hizuoka.blog41.fc2.com/tb.php/11-9fabed7a

トラックバック

コメント

コメントの投稿

コメントの投稿
管理者にだけ表示を許可する

Appendix

プロフィール

ヒズ

Author:ヒズ
FC2ブログへようこそ!

最新コメント

最新トラックバック

月別アーカイブ

検索フォーム

ブロとも申請フォーム

この人とブロともになる

QRコード

QRコード
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。