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

ただのメモ。

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

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

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

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

関連記事

『手を動かしながら学ぶエンジニアのためのデータサイエンス』ハ...

JavaScriptとかWebGLとかCanvasとか

RSSフィードを読込んで表示するWordpressプラグイン...

Webスクレイピングの勉強会に行ってきた

Kornia:微分可能なコンピュータービジョンライブラリ

OpenMesh:オープンソースの3Dメッシュデータライブラ...

UnityのAR FoundationでARKit 3

畳み込みニューラルネットワーク (CNN: Convolut...

書籍『ROSプログラミング』

3Dグラフィックスの入門書

OpenCVで平均顔を作るチュートリアル

Mean Stack開発の最初の一歩

OpenCV 3.3.0 contribのsfmモジュールの...

WordPressのテーマを自作する

組み込み向けのWindows OS 『Windows Emb...

OpenCV 3.1のsfmモジュールのビルド再び

Unityをレンダラとして活用する

pythonもかじってみようかと

iPhone・iPod touchで動作する知育ロボット『R...

UnityのTransformクラスについて調べてみた

Managing Software Requirements...

オープンソースの取引プラットフォーム

オープンソースハードウェア Arduino (アルドゥイーノ...

FCN (Fully Convolutional Netwo...

libigl:軽量なジオメトリ処理ライブラリ

AfterEffectsプラグイン開発

Mitsuba 3:オープンソースの研究向けレンダラ

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

ヘッドマウントディスプレイとビジュアリゼーションの未来

スクレイピング

オープンソースの人体モデリングツール『MakeHuman』の...

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

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

法線マップを用意してCanvas上でShadingするサンプ...

マルコフ連鎖モンテカルロ法

東京オリンピックと案内表示

3DCG Meetup #4に行ってきた

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

TensorFlowでCGを微分できる『TensorFlow...

Amazon Web ServicesでWordPress

BlenderのPython環境にPyTorchをインストー...

iOSで使えるJetpac社の物体認識SDK『DeepBel...

コメント