Unity Hackason 2020 メモ

スクリプト

他のオブジェクトにアクセスする方法

まずはpublicもしくはprivateでGameObject型の変数を作る

public GameObject 変数名; でオブジェクト変数を定義。
Inspector内でスクリプトの中にアタッチできる。

子オブジェクトにアクセス

Start()関数内で
変数名 = transform.GetChild(0).gameObject;
で取得できる。

出力関数

Cにおけるprintf関数、C++におけるcoutに相当するのが
Debug.Log関数
Debug.Log ("Hello World!");
などと書く

Is Triggerとは

チェックするとすり抜ける(物理演算はないが、スクリプトは呼び出されたりする)

トリガーにすると、Rigidbody の衝突判定を行わなくなります。ですが、Rigidbody がトリガーの範囲内に「入り」、「出る」ときにコールバックとして OnTriggerEnter、OnTriggerExit、OnTriggerStay が呼び出されます。(スクリプトリファレンスより)

OnTriggerStayメソッド

これもメソッドなので
これはStartメソッドやUpdateメソッドの中ではなく。外に作る。

変数をInspector上でいじりたいけど他のスクリプトから参照されたくない場合

public変数の上に[SerializeFiedl]を書けばよい

オブジェクトの表示のON/OFFを切り替える方法

オブジェクト.SetActive(true/false);

SetActiveとenabledの違い

SetActiveはgameObjectのOn/Off
enabledはgameObjectにアタッチされたComponentのOn/Off
SetActiveとenabledの違いとは? - 三流豆腐。

OnEnable/OnDisableとは

マテリアルの作成

Assets → Create → Material

テキストの作成について

TextMeshProというのを使うときれいにできるらしい。

TextMeshProの使い方 - Qiita

GitHub + SourceTreeについて

一番最初

GitHubの画面からCode→リンクをコピー
SourceTreeで新しいタブを開く→Clone→URLをペースト

masterにマージするまでの流れ

コミット(自分のローカルに保存)→プッシュ(サーバーに挙げる)→プルリク

プルするときにエラー

エラーの原因がメタファイルならば廃棄してOK
メタファイルとは、ファイルの位置データのようなもの

Unity上の操作

複数シーンを同時に編集

追加して開きたいシーンを右クリックし、Scene Additiveを選択

f:id:matrochca:20200927002009p:plain
Scene Additiveを選択

オブジェクトを選択してFを押すと、そのオブジェクトに向かって拡大する

便利

ぶち当たった問題

物つかめない問題

原因はLayerがPlayerになっていたこと。
LayerをGlabbableにしたら解決。

f:id:matrochca:20200927011325p:plain
Layerを変更

VSCodeコメントアウトする

コメントアウトしたい部分を選択してCtrl+/