Advertisement
napland

Custom transform component part 2-2

Jul 29th, 2016
472
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.02 KB | None | 0 0
  1.     private static bool quaternionFoldout = false;
  2.     private void QuaternionInspector()
  3.     {
  4.         //Additional element to also view the Quaternion rotation values
  5.         quaternionFoldout = EditorGUILayout.Foldout(quaternionFoldout, "Quaternion Rotation:    " + _transform.localRotation.ToString("F3"));
  6.         if (quaternionFoldout)
  7.         {
  8.             EditorGUI.BeginChangeCheck();
  9.             Vector4 qRotation = EditorGUILayout.Vector4Field("Be careful!", QuaternionToVector4(_transform.localRotation));
  10.  
  11.             if (EditorGUI.EndChangeCheck())
  12.             {
  13.                 Undo.RecordObject(_transform, "modify quaternion rotation on " + _transform.name);
  14.                 _transform.localRotation = ConvertToQuaternion(qRotation);
  15.             }
  16.         }
  17.     }
  18.  
  19.  
  20.     private Quaternion ConvertToQuaternion(Vector4 v4)
  21.     {
  22.         return new Quaternion(v4.x, v4.y, v4.z, v4.w);
  23.     }
  24.  
  25.  
  26.     private Vector4 QuaternionToVector4(Quaternion q)
  27.     {
  28.         return new Vector4(q.x, q.y, q.z, q.w);
  29.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement