UnityのGameObjectの向きをScriptで制御する

オブジェクトの向きを、あるルールに従って制御したいような場合に使える方法。

基本的にGameObjectTransformを使う。Transformの持つforward, right, upがそれぞれX(赤),Y(緑),Z(青)の各軸みたいに対応している。
Transform

forward: ワールド座標系でのtransformの青軸。
right: ワールド座標系でのtransformの赤軸。
up: ワールド座標系でのtransformの緑軸。


スポンサーリンク

スポンサーリンク

これらは読み取り用として以下のように、使うこともできるけど、

例えば、以下のような感じで、transform.upの値を毎フレーム更新することで、常に一定の方向を向き続けさせることができる。
この例では、GameObjectがどんなに動いても、絶対に上下がひっくり返ったりしないようになる。

その他、transform.LookAtを使うと、特定の位置座標を注視するように向きを制御することができる。

これでカメラが常に1つのオブジェクトをフレームに捉えるような実装ができる。
この方法は、向きを数値入力でなく、他のオブジェクトとの位置関係で制御できるので操作がGUI上で直観的に行えるのでお勧め。


スポンサーリンク

関連記事

OpenCV 3.1のsfmモジュールのビルド再び
ヘッドマウントディスプレイとビジュアリゼーションの未来
Windows Server 2008にAutodesk Maya 2009をインストール
ジュラシック・パークの続編『ジュラシック・ワールド』
スクレイピング
OpenCVの超解像処理モジュール『Super Resolution』
3Dボリュームデータ処理ライブラリ『OpenVDB』
Deep Learningとその他の機械学習手法の性能比較
HerokuでMEAN stack
ゴジラ三昧
OpenCVベースのマーカーARライブラリ『OpenAR』
今年もSSII
Mayaのポリゴン分割ツールの進化
書籍『3次元コンピュータビジョン計算ハンドブック』を購入
『Deep Fluids』流体シミュレーションをディープラーニングで近似する
UnityでShaderの入力パラメータとして行列を渡す
オープンソースの3Dメッシュデータライブラリ『OpenMesh』
ラクガキの立体化 胴体の追加
Unityで使える数値計算ライブラリ『Math.NET Numerics』
参考書
レンダラ制作はOpenGL とか DirectX を使わなくてもできるんだぜ
Adobe Photoshop CS5の新機能
AMIMOTO(PVM版)で作成したインスタンスをAMIMOTO (HVM版)へ移行する
MFnDataとMFnAttribute
動的なメモリの扱い
オープンソースの物理ベースGIレンダラ『appleseed』
Subsurface scatteringの動画
ゴジラ(2014)のディティール制作の舞台裏
映画『ブレードランナー 2049』のVFX
SONY製のニューラルネットワークライブラリ『NNabla』
Unityの薄い本
ラクガキの立体化 反省
OpenCVでカメラ画像から自己位置認識 (Visual Odometry)
ゴジラの造形
Faceshiftで表情をキャプチャしてBlender上でMakeHumanのメッシュを動かすデモ
iPhone・iPod touchで動作する知育ロボット『ROMO』
Photo Bash:複数の写真を組み合わせて1枚のイラストを制作する
天体写真の3D動画
なんかすごいサイト
Pythonのソースコードに特化した検索エンジン『Nullege』
Autodesk CompositeとAutodesk MatchMoverが無料
Unreal Engineの薄い本

コメント