特定のファイルを特定のバージョンまで戻す
git checkout ハッシュ値 ファイル名
uGUIが表示されなくなる dll reimport
"Asset '*********/UnityEngine.UI.dll' is in timestamps but is not known in assetdatabase..."
Unityが固まったので強制終了させたらこんなエラーが。
よく見るとuGUIの部分が表示されていない。
解決するにはこのDLLを再インポートする。
Unity終了、DLLをどこかに退避、Unity起動、Unity終了、DLLを戻す、Unity起動、これで再インポートできた。
とてもめんどくさいのでEditor拡張でなんとかする。
エディタ拡張でprivate fieldにアクセスする
エディタ拡張をする際、いつもプライベートのフィールドやプロパティを変更したい場合に困ってしまう。
インナークラスからはプライベートのフィールドやプロパティにアクセス出来ることを利用して解決してみる。
拡張したいクラス内にUNITY_EDITORでくくったEditorのベースクラスを作っておく。
この中からはプライベートにアクセス出来るのです。
これを継承して拡張すればプレイベートのフィールドやプロパティにアクセスできます。
オブジェクトの周りを回転させる Transform.RotateAround
指定したオブジェクトの周りを回転させたい時はTransform.RotateAroundを使います。
axisは回転軸になります。
このサンプルの場合はY軸を指定して反時計回りに回ります。
Vector3.downを指定すると反時計回りになります。
これをカメラにAddComponentすればターゲットの方を見ながら周りを回転させることができます。
プレハブを削除したとこでMissingになってしまったインスタンスの解決
プレハブを削除するとHierarchy上で赤く表示され、InspectorにMissingと表示されてしまいます。
これを解決するにはインスタンスを選択しておき、GameObject/Break Prefab Instance
これでプレハブとの参照がきれます。