Unity

【Unity】背景をアルファ0でスクリーンショットを撮る

はじめに ScreenCapture クラスを使用して ゲーム画面をキャプチャすることができますが, 背景を透過してキャプチャしたかったのでクラスを作成しました。 docs.unity3d.com 完成図 ゲーム画面 キャプチャ結果 コード public static class ScreenCapture { p…

【Unity】hierarchyで選択したGameObjectの座標を右クリックでコピーする

概要 これ ペースト Main Camera: 0.000, 1.000, -10.000 Directional Light: 0.000, 3.000, 0.000 コード public class CopyPositionToClipboard { [MenuItem("GameObject/Copy Position", false, 0)] private static void CopyPosition() { if (Selection.…

【Unity】Collider のアタッチされた Prefab をリストアップするツール

はじめに 画像のように Collider のアタッチされた Prefab をリストアップします。 子 GameObject にアタッチされている場合は, Root の GameObject からのパスを表示します。 ソースコード public class ColliderListWindow : ComponentListWindow<Collider> { [MenuI</collider>…

【Unity】AssetDatabase.FindAssets で使用できる検索フィルタ

はじめに AssetDatabase.FindAssets() を使用することで, Project に存在するアセットのGUIDをリスト取得することができます。 この Api は第一引数に string で検索フィルタを指定し, 一覧取得する対象アセットを絞りこむことが可能です。 docs.unity3d.com…

【Unity】AnimationClip のリネームサポートツール

Animator を使用している GameObject の子の命名を変えると, AnimationClip で Missing が発生してしまい, 修正が手間なため, ツールを作成しました。 完成形 存在するパスが入力されると緑色のアイコンが表示されます。 ソースコード using System.Collecti…

【Unity】特定の型のアセットの依存情報をJSONで保存する

特定の型の依存情報のみを高速で取得したい案件があったので, JSONで依存情報を保存しておき, 必要な時にデシリアライズして使用します. ソースコード using System; using System.Collections.Generic; using System.IO; using System.Linq; using UnityEdi…

【Unity】AnimationClip を path で検索できるツール

完成イメージ アニメーションクリップをパスで検索したいケースがあったので作成しました。 要素を ドラッグ&ドロップして Inspector などの ObjectField にアタッチすることも可能です。 ソースコード using System.Collections.Generic; using System.Lin…

【Unity】SerializeReference の挙動検証

概要 検証 YAMLを見てみる 配列の順番を変更する 配列の要素を削除する シリアライズされているクラスを削除する 削除したクラスを復元する クラスのリネームをしてみる リファレンス 概要 SerializeReference を使用することで, 添付画像のようにリストの全…

【Unity】Menuを検索する

概要 Unity2021 から組み込まれた UnitySearch を 使用することで素早く検索することが可能です。 Ctrl + K または mac であれば ⌘ + K のショートカットで起動できます。 やり方 検索対象を絞り込むための Search Token が用意されており, m: を頭につけて…

【Unity】PlayMode と EditMode でエディタLayoutを切り替えるエディタ拡張

概要 Unity Editor の Layout を PlayMode と Edit Mode で切り替えるエディタ拡張です。 Edit Mode と Play Mode で開きたいウィンドウが違うので自動で切り替えるようにしました。 ソースコード EditorWindow で作成すると, Layout変更時に消えてしまうの…

【Unity】矩形と円形の接触判定

矩形と円形の接触判定を行いたい事案があったのでメモ. 実装 矩形の表現には Rect 型を使用します. Circle型は無いので以下のように定義しました. record Circle(Vector2 Center, float Radius); 矩形と円形が接触しているかは以下の3ステップで判定可能. 矩…

【Unity】hierarchyの検索テキストをプリセットするツール

概要 hierarchyで検索したいテキストを保存しておいて, ワンクリックでhierarchyの検索フィールドに設定できるエディタ拡張です。 コード HierarchySearchSetter.cs 参考 ヒエラルキーでコンポーネント検索が少し楽になるエディタ拡張 #Unity - Qiita

【Unity】EditorWindowにinspectorと同じ内容を表示する

やりたいこと CustomEditor でオーバーライドされた ScriptableObject の inspector の表示を EditorWindow 上で表示できるようにしたい. ScriptableObject を作成 [CreateAssetMenu(fileName = "DemoData", menuName = "Create/DemoData")] public class De…