オブジェクトの向きを、あるルールに従って制御したいような場合に使える方法。
基本的に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上で直観的に行えるのでお勧め。
関連記事
UnityのMonoBehaviourクラスをシングルトン化...
チャットツール用bot開発フレームワーク『Hubot』
オープンソースのネットワーク可視化ソフトウェアプラットフォー...
UnityのuGUIチュートリアル
UnityでOpenCVを使うには?
pythonの機械学習ライブラリ『scikit-learn』
ZBrushでアヴァン・ガメラを作ってみる 歯茎を別パーツへ...
Iridescence:プロトタイピング向け軽量3D可視化ラ...
openMVGをWindows10 Visual Studi...
ZBrushでアヴァン・ガメラを作ってみる 脚のポーズ調整
ZBrushでゴジラ2001を作ってみる 側頭部のボリューム...
Structure from Motion (多視点画像から...
FreeMoCap Project:オープンソースのマーカー...
Blenderでよく使うaddon
スターウォーズ エピソードVIIの予告編
iOSで使えるJetpac社の物体認識SDK『DeepBel...
スクレイピング
イタリアの自動車ブランドFiatとゴジラがコラボしたCMのメ...
ラクガキの立体化
ZBrush 4R7
AMIMOTO(PVM版)で作成したインスタンスをAMIMO...
3D映画のポストプロダクション 2D-3D変換
Google App EngineでWordPress
Math.NET Numerics:Unityで使える数値計...
OpenCV 3.1のsfmモジュールを試す
UnrealCLR:Unreal Engineで.NET C...
Google製オープンソース機械学習ライブラリ『Tensor...
マジョーラ
ManimML:機械学習の概念を視覚的に説明するためのライブ...
SIGGRAPH ASIAのマスコット
『スター・ウォーズ フォースの覚醒』のVFXブレイクダウン ...
BlenderのRigifyでリギング
Pix2Pix:CGANによる画像変換
MPC社によるゴジラ(2014)のVFXブレイクダウン
ポリ男をリファイン
MVStudio:オープンソースのPhotogrammetr...
ZBrushで仮面ライダー3号を造る 仮面編 DynaMes...
VGGT:マルチビュー・フィードフォワード型3Dビジョン基盤...
BGSLibrary:OpenCVベースの背景差分ライブラリ
Arduinoで人感センサーを使う
Iterator
トランスフォーマー/ロストエイジのメイキング

コメント