Legacy Documentation: Version 2017.1 (Go to current version)
LanguageEnglish
  • C#
  • JS

Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

Quaternion.operator *

public static Quaternion operator *(Quaternion lhs, Quaternion rhs);

Parameters

lhs Left-hand side quaternion.
rhs Right-hand side quaternion.

Description

Combines rotations lhs and rhs.

Rotating by the product lhs * rhs is the same as applying the two rotations in sequence: lhs first and then rhs, relative to the reference frame resulting from lhs rotation. Note that this means rotations are not commutative, so lhs * rhs does not give the same rotation as rhs * lhs.

using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { public Transform extraRotation; // Applies the rotation of extraRotation to the current rotation. void Example() { transform.rotation *= extraRotation.rotation; } }

public static Vector3 operator *(Quaternion rotation, Vector3 point);

Description

Rotates the point point with rotation.

using UnityEngine;
using System.Collections;

// Moves the object along relativeDirection // Usually you would use transform.Translate for this public class ExampleClass : MonoBehaviour { public Vector3 relativeDirection = Vector3.forward; void Update() { Vector3 absoluteDirection = transform.rotation * relativeDirection; transform.position += absoluteDirection * Time.deltaTime; } }

Did you find this page useful? Please give it a rating: