オブジェクトの向きを、あるルールに従って制御したいような場合に使える方法。
基本的にGameObjectのTransformを使う。Transformの持つforward, right, upがそれぞれX(赤), Y(緑), Z(青)の各軸みたいに対応している。
Transform
forward: ワールド座標系でのtransformの青軸。
right: ワールド座標系でのtransformの赤軸。
up: ワールド座標系でのtransformの緑軸。
これらは読み取り用として以下のように、使うこともできるけど、
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour {
void Example() {
rigidbody.velocity = transform.forward * 10;
}
}
例えば、以下のような感じで、transform.upの値を毎フレーム更新することで、常に一定の方向を向き続けさせることができる。
この例では、GameObjectがどんなに動いても、絶対に上下がひっくり返ったりしないようになる。
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour {
void Update() {
this.GameObject.transform.up = new Vector3(0, 1, 0);
}
}
その他、transform.LookAtを使うと、特定の位置座標を注視するように向きを制御することができる。
using UnityEngine;
using System.Collections;
public class ExampleClass : MonoBehaviour {
public Transform target;
void Update() {
transform.LookAt(target);
}
}
これでカメラが常に1つのオブジェクトをフレームに捉えるような実装ができる。
この方法は、向きを数値入力でなく、他のオブジェクトとの位置関係で制御できるので操作がGUI上で直観的に行えるのでお勧め。
関連記事
書籍『仕事ではじめる機械学習』を読みました
PureRef:リファレンス画像専用ビューア
TeleSculptor:空撮動画からPhotogramme...
ZBrush4新機能ハイライト 3DCG CAMP 2010
PyMC:Pythonのベイズ統計ライブラリ
ROMOハッカソンに行ってきた
OpenCVでカメラ画像から自己位置認識 (Visual O...
PolyPaint
書籍『メイキング・オブ・ピクサー 創造力をつくった人々』を読...
HerokuでMEAN stack
ZBrushで手首のモデリングをリファイン
写真に3Dオブジェクトを違和感無く合成する『3DPhotoM...
OpenCV バージョン4がリリースされた!
『スター・ウォーズ フォースの覚醒』のVFXブレイクダウン ...
ヒーローに変身なりきりアーケードゲーム『ナレルンダー』
ミニ四駆で電子工作
映像ビジネスの未来
WebGL開発に関する情報が充実してきている
OpenFace:Deep Neural Networkによ...
Vancouver Film Schoolのデモリール
PythonでMayaのShapeノードプラグインを作る
SONY製のニューラルネットワークライブラリ『NNabla』
Raspberry PiのGPIOを操作するPythonライ...
SIGGRAPH Asia
オープンソースの顔認識フレームワーク『OpenBR』
bpy-renderer:レンダリング用Pythonパッケー...
ROSの薄い本
フリーのUV展開ツール Roadkill UV Tool
『ゴジラ キング・オブ・モンスターズ』のVFXブレイクダウン
ラクガキの立体化 胴体の追加
機械学習で遊ぶ
Digital Emily Project:人間の顔をそっく...
Unityの各コンポーネント間でのやり取り
MetaHumanの頭部をBlenderで編集できるアドオン
参考になりそうなサイト
OpenVDB:3Dボリュームデータ処理ライブラリ
ポリゴンジオメトリ処理ライブラリ『pmp-library (...
映画から想像するVR・AR時代のGUIデザイン
日本でMakersは普及するだろうか?
2012 昨日のクローズアップ現代を見た
Adobe Photoshop CS5の新機能
Stanford Bunny

コメント