示例#1
0
        public override bool OnGizmoCanBeginDrag(int handleId)
        {
            if (BoxUsage == Usage.ObjectScale && _targetHierarchy != null)
            {
                IRTTransformGizmoListener transformGizmoListener = _targetHierarchy.GetComponent <IRTTransformGizmoListener>();
                if (transformGizmoListener != null)
                {
                    return(transformGizmoListener.OnCanBeTransformed(Gizmo));
                }
            }

            return(true);
        }
示例#2
0
        private List <GameObject> GetTransformableParentObjects()
        {
            List <GameObject> targetParents        = GameObjectEx.FilterParentsOnly(_targetObjects);
            List <GameObject> transformableParents = new List <GameObject>();

            foreach (var parent in targetParents)
            {
                IRTTransformGizmoListener transformGizmoListener = parent.GetComponent <IRTTransformGizmoListener>();
                if (transformGizmoListener != null && !transformGizmoListener.OnCanBeTransformed(Gizmo))
                {
                    continue;
                }

                if (Settings.IsLayerTransformable(parent.layer) &&
                    Settings.IsObjectTransformable(parent))
                {
                    transformableParents.Add(parent);
                }
            }

            return(transformableParents);
        }