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

ただのメモ。

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

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

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

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

関連記事

DensePose:画像中の人物表面のUV座標を推定する

Unite 2014の動画

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

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

AR (Augmented Reality)とDR (Diminished Reality)

BlenderProc:Blenderで機械学習用の画像データを生成するPythonツール

Raspberry Pi 2のGPIOピン配置

Deep Learningとその他の機械学習手法の性能比較

Mask R-CNN:ディープラーニングによる一般物体検出・Instance Segmentatio...

Arduinoで作るダンボーみたいなロボット『ピッコロボ』

uGUI:Unityの新しいGUI作成システム

Russian3DScannerのトポロジー転送ツール『WrapX』

LuxCoreRender:オープンソースの物理ベースレンダラ

iOSデバイスのためのフィジカル・コンピューティングツールキット『konashi(こなし)』

UnityのMonoBehaviourクラスをシングルトン化する

html5のcanvasの可能性

Javaで作られたオープンソースの3DCGレンダラ『Sunflow』

書籍『仕事ではじめる機械学習』を読みました

CycleGAN:ドメイン関係を学習した画像変換

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

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

PyTorch3D:3Dコンピュータービジョンライブラリ

Manim:Pythonで使える数学アニメーションライブラリ

UnityユーザーがUnreal Engineの使い方を学ぶには?

ディープラーニング

オープンソースの顔認識フレームワーク『OpenBR』

UnityでLight Shaftを表現する

pythonもかじってみようかと

OANDAのfxTrade API

python-twitterで自分のお気に入りを取得する

ROSの薄い本

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

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

CLO:服飾デザインツール

Cartographer:オープンソースのSLAMライブラリ

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

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

Unite 2017 Tokyoに行ってきた

HD画質の無駄遣い

OpenCV

Google App Engineのデプロイ失敗

ミニ四駆を赤外線制御したりUnityと連携したり

コメント