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

ただのメモ。

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

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

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

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

関連記事

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

HerokuでMEAN stack

Unity ARKitプラグインサンプルのドキュメントを読む

UnityのuGUIチュートリアル

C++始めようと思うんだ

AfterEffectsプラグイン開発

Open3D:3Dデータ処理ライブラリ

Composition Rendering:Blenderに...

UnrealCLR:Unreal Engineで.NET C...

WordPressプラグインの作り方

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

タマムシっぽい質感

Faster R-CNN:ディープラーニングによる一般物体検...

Web経由でRaspberry PiのGPIOを操作したい

Unite 2017 Tokyoに行ってきた

株式会社ヘキサドライブの研究室ページ

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

ニューラルネットワークで画像分類

Google App Engine上のWordPressでF...

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

UnityでTweenアニメーションを実装できる3種類の無料...

Math Inspector:科学計算向けビジュアルプログラ...

手を動かしながら学ぶデータマイニング

iOSデバイスのためのフィジカル・コンピューティングツールキ...

COLMAP:オープンソースのSfM・MVSツール

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

OpenCVの三角測量関数『cv::triangulatep...

3Dモデルを立体視で確認できるVRアプリを作っている

Raspberry Piでセンサーの常時稼働を検討する

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

cvui:OpenCVのための軽量GUIライブラリ

IronPythonを使ってUnity上でPythonのコー...

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

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

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

Math.NET Numerics:Unityで使える数値計...

Deep Fluids:流体シミュレーションをディープラーニ...

bpy-renderer:レンダリング用Pythonパッケー...

Arduinoで人感センサーを使う

OpenCVで顔のランドマークを検出する『Facemark ...

ドットインストールのWordPress入門レッスン

JavaScriptとかWebGLとかCanvasとか

コメント