イラスト、モデリング、Unity、VR関連

unityとかblenderとかvr関連の作業メモ

ocurasgoのゲーム開発で使用したunityのノウハウリスト

++C#の勉強

C# によるプログラミング入門 | ++C++; // 未確認飛行 C

 

++非同期処理・コルーチン・Invokeについて

プロセスとスレッドとタスクの違いを知ってUnity非同期完全理解に近付く - Qiita

Taskを極めろ!async/await完全攻略 - Qiita

MonoBehaviour-Invoke - Unity スクリプトリファレンス

引数が二つ以上あるときは次のように書く

StartCoroutine(TimerDestroy(aaa,bbb));

 

単に一定時間後に非同期で実行したい、という場合はInvokeを使ってもいい。

 

++スクリプトの設計

【Unity 設計の話】初心者がやりがちな設計ミスにマサカリを投げてみる - rn.log

オブジェクト指向設計実践ガイド を読む - arumogina-tech’s blog

 

++当たり判定

・どちらか片方にRigidBodyが必要

・物理演算?を使う場合はisTriggerを互いに外す。この場合、OnCollider___がメソッドとなる

・片方にisTriggerが付いてる場合は範囲判定となり、OnTrigger___がメソッド名となる

 

++接触したオブジェクトの名前を取得する

void OnTriggerEnter(Collider obj){

  obj.gameObject.name;

}

Collider.gameObjectを覚えておく

 

++他のオブジェクトのスクリプトにアクセスする

GameObject.Find("object_name").GetComponent<script_name>();

 

++オブジェクトを発光させる

Renderer Rend;
Rend = GetComponent();
Rend.material.EnableKeyword("_EMISSION");
Rend.material.SetColor("_EmissionColor",new Color(0,0.7f,2.4f));

++オブジェクトの回転

UnityでRotation(Quaternion)をうまく使いたい - お米 is ライス

 

++パーティクル

Unity パーティクルについて - イラスト、モデリング、Unity、VR関連

 

 

++シェイプキーの取り込み

Unity blenderのシェイプキーをアニメーションクリップに変換する(vrchat向け) - イラスト、モデリング、Unity、VR関連

 

++シリアライズフィールド

Unityのスクリプトはpublicかつ変数名に大文字が含まれていればインスペクタから操作できるようになるが、カプセル化の原則破っててオブジェクト指向的に良くないよね、と思ってたら、

  [SerializeField] int maxScore = 100;

のように宣言すれば、publicでなくともインスペクタから操作出来るようになるらしい

Unityの[SerializeField]について色々な疑問に答えてみる - Qiita

変更に強くするため、軽量化のためにもFind,GetComponentは使わずにSerializeFieldを使うべきである。

 Unity開発で気をつけておきたい7つの事 -2015年版- - 渋谷ほととぎす通信

 

注意点として、DontDestoryOnLoadでシングルトンにするスクリプトの場合、DontDestoryLoadしないオブジェクトをシリアライズフィールドで管理すると、シーンを移動した場合、そのオブジェクトが消えてシリアライズフィールドが空になってしまう

 

++回転のアニメーションをスムーズにする

回転のアニメーションを作成したのちに、AddPropertyの下にあるcurvesをクリック。点を右クリックして、Both=>Linerを選択、

これで変化の度合いを変更できる。

f:id:arumogina:20190313083035p:plain

 

++シーン間での変数の共有

http://tsubakit1.hateblo.jp/entry/2015/11/07/024350 

 

++UNET

Unity UNETについてのメモ - イラスト、モデリング、Unity、VR関連

unet の検索結果 - イラスト、モデリング、Unity、VR関連

 

 

++レイキャスト・レイヤーマスク

RayCastその2、衝突するオブジェクトの制限【Unity】 - (:3[kanのメモ帳]

Physics-Raycast - Unity スクリプトリファレンス

 

++DontDestroyOnLoadのシングルトン

【Unity】シングルトンを上手く活用しよう - はなちるのマイノート