Unityの各コンポーネント間でのやり取り

ただのメモ。

UnityのScriptは未だにどういう設計が良いのかよくわからない。変な挙動を起こさないためにMonobehaviorを継承しないでクラスを作ったりもしたんだけど、Monobehaviorの恩恵に与るとしたらどんな方法があるのか最近調べている。

1つの制御クラスから他のクラスへ処理を伝搬させたい時、Unityの機能を駆使すると以下の4つ方法があるらしい。
コンポーネント間のメソッド呼び出しとパフォーマンス

1. GetComponent() + TargetMethod()
2. SendMessage(“TargetMethod”)
3. BroadcastMessage(“TargetMethod”)
4. static TargetMethod() な感じで静的メソッドを使用する。

システム屋的な発想だと4しか思いつかないんだけど、ゲーム開発系の人はまた違う発想なのかな。1の処理が重そうなのはなんとなく分かるので、2,3を検証してきたいところ。

関連記事

粘土をこねるようなスカルプトモデリング

UnityプロジェクトをGitHubで管理する

OpenCVの顔検出過程を可視化した動画

Boost オープンソースライブラリ

Geogram:C++の3D幾何アルゴリズムライブラリ

UnityでShaderの入力パラメータとして行列を渡す

ミニ四駆を改造してBluetoothラジコン化する

Dlib:C++の機械学習ライブラリ

OpenCVでカメラ画像から自己位置認識 (Visual O...

Russian3DScannerのトポロジー転送ツール『Wr...

Oculus Goを購入!

Alice Vision:オープンソースのPhotogram...

OpenGV:画像からカメラの3次元位置・姿勢を推定するライ...

ROSの薄い本

書籍『3次元コンピュータビジョン計算ハンドブック』を購入

OpenCV 3.3.0-RCでsfmモジュールをビルド

NeuralNetwork.NET:.NETで使えるTens...

WordPress on Windows Azure

Windows10でPyTorchをインストールしてVSCo...

HD画質の無駄遣い

uvでWindows11のPython環境を管理する

Python拡張モジュールのWindows用インストーラー配...

iPhoneアプリ開発 Xcode 5のお作法

OpenAR:OpenCVベースのマーカーARライブラリ

ブログの復旧が難航してた話

Twitter APIのPythonラッパー『python-...

インターフェイスは世界を規定する

BGSLibrary:OpenCVベースの背景差分ライブラリ

Point Cloud Utils:Pythonで3D点群・...

WordPressのサーバ引っ越し方法を考える

第1回 3D勉強会@関東『SLAMチュートリアル大会』

OpenFace:Deep Neural Networkによ...

ブログが1日ダウンしてました

Swark:コードからアーキテクチャ図を作成できるVSCod...

JavaScriptとかWebGLとかCanvasとか

ManimML:機械学習の概念を視覚的に説明するためのライブ...

CGレンダラ研究開発のためのフレームワーク『Lightmet...

openMVG:複数視点画像から3次元形状を復元するライブラ...

Live CV:インタラクティブにComputer Visi...

viser:Pythonで使える3D可視化ライブラリ

OpenGVの用語

SDカードサイズのコンピューター『Intel Edison』

コメント