public void OnObjectSelectionUpdatedUsingSelectionShape() { ObjectTransformGizmo activeGizmo = GetActiveGizmo(); if (activeGizmo != null) { GameObject firstSelectedGameObject = ObjectSelection.Get().GetFirstSelectedGameObject(); if (firstSelectedGameObject == null) { return; } Transform firstSelectedObjectTransform = firstSelectedGameObject.transform; if (_gizmoTransformPivotPoint == TransformGizmoPivotPoint.Pivot && firstSelectedGameObject != null) { activeGizmo.WorldPosition = firstSelectedObjectTransform.position; } else { activeGizmo.WorldPosition = ObjectSelection.Get().GetWorldCenter(); } if (_gizmoTransformSpace == TransformSpace.Local && firstSelectedObjectTransform != null) { activeGizmo.WorldRotation = firstSelectedObjectTransform.rotation; } else { activeGizmo.WorldRotation = Quaternion.identity; } } }
public void RenderHandles(HashSet <GameObject> selectedGameObjects) { if (selectedGameObjects == null || selectedGameObjects.Count == 0 || !_areGizmosActive) { return; } ObjectTransformGizmo activeGizmo = GetActiveGizmo(); if (activeGizmo != null) { activeGizmo.GameObjectsWhichCanBeTransformed = selectedGameObjects; activeGizmo.RenderHandles(_gizmoTransformPivotPoint); } }
public bool OwnsGizmo(ObjectTransformGizmo objectTransformGizmo) { if (objectTransformGizmo == ObjectMoveGizmo) { return(true); } if (objectTransformGizmo == ObjectRotationGizmo) { return(true); } if (objectTransformGizmo == ObjectScaleGizmo) { return(true); } return(false); }
private void AdjustActiveGizmoRotation() { ObjectTransformGizmo activeGizmo = GetActiveGizmo(); if (activeGizmo != null) { if (_gizmoTransformSpace == TransformSpace.Local) { GameObject firstSelectedObject = ObjectSelection.Get().GetFirstSelectedGameObject(); if (firstSelectedObject != null) { activeGizmo.WorldRotation = firstSelectedObject.transform.rotation; } } else { activeGizmo.WorldRotation = Quaternion.identity; } } }
private void AdjustActiveGizmoPosition() { ObjectTransformGizmo activeGizmo = GetActiveGizmo(); if (activeGizmo != null) { if (_gizmoTransformPivotPoint == TransformGizmoPivotPoint.Pivot) { GameObject firstSelectedObject = ObjectSelection.Get().GetFirstSelectedGameObject(); if (firstSelectedObject != null) { activeGizmo.WorldPosition = firstSelectedObject.transform.position; } } else { activeGizmo.WorldPosition = ObjectSelection.Get().GetWorldCenter(); } } }
public static void SendToInterestedListeners(ObjectTransformGizmo objectTransformGizmo) { var message = new GizmoTransformedObjectsMessage(objectTransformGizmo); MessageListenerDatabase.Instance.SendMessageToInterestedListeners(message); }
public GizmoTransformedObjectsMessage(ObjectTransformGizmo objectTransformGizmo) : base(MessageType.GizmoTransformedObjects) { _objectTransformGizmo = objectTransformGizmo; }