lhs
および lhs
の回転を組合わせます。
rhs
* rhs
の積で回転させることは、二つの回転を
lhs
を先に rhs
を次に回転と、 順番に適用することと同じです。
注意することとして、回転は交換可能ではないため、 lhs * rhs と rhs * lhs は同じ回転となりません。
// Applies the rotation of
// extraRotation
to the current rotation.
var extraRotation : Transform;
transform.rotation *= extraRotation.rotation;
using UnityEngine; using System.Collections; public class ExampleClass : MonoBehaviour { public Transform extraRotation; void Example() { transform.rotation *= extraRotation.rotation; } }
import UnityEngine import System.Collections public class ExampleClass(MonoBehaviour): public extraRotation as Transform def Example() as void: transform.rotation *= extraRotation.rotation
rotation
の点に rotation
の回転をさせます。
// Moves the object along relativeDirection // Usually you would use transform.Translate for this var relativeDirection = Vector3.forward; function Update () { var absoluteDirection = transform.rotation * relativeDirection; transform.position += absoluteDirection * Time.deltaTime; }
using UnityEngine; using System.Collections; public class ExampleClass : MonoBehaviour { public Vector3 relativeDirection = Vector3.forward; void Update() { Vector3 absoluteDirection = transform.rotation * relativeDirection; transform.position += absoluteDirection * Time.deltaTime; } }
import UnityEngine import System.Collections public class ExampleClass(MonoBehaviour): public relativeDirection as Vector3 = Vector3.forward def Update() as void: absoluteDirection as Vector3 = (transform.rotation * relativeDirection) transform.position += (absoluteDirection * Time.deltaTime)