예제 #1
0
        public void DrawBone(Vector2 position, Vector2 endPosition, bool isSelected, bool isHovered, Color color)
        {
            color.a = boneOpacity;

            Color outlineColor = Color.black;

            outlineColor.a = boneOpacity * boneOpacity;

            if (isSelected || (isHovered && IsActionActive(BindPoseAction.SelectBone)))
            {
                outlineColor = Color.yellow;
            }


            Color nodeColor = Color.black;

            if (isHovered && IsActionActive(BindPoseAction.MoveBone) ||
                isSelected && IsActionHot(BindPoseAction.MoveBone))
            {
                nodeColor = Color.yellow;
            }

            nodeColor.a = boneOpacity;

            BoneDrawingUtility.DrawBoneOutline(position, endPosition, outlineColor);
            BoneDrawingUtility.DrawBoneBody(position, endPosition, color);
            BoneDrawingUtility.DrawBoneNodeOutline(position, color);
            BoneDrawingUtility.DrawBoneNode(position, nodeColor.AlphaMultiplied(0.5f));
        }
예제 #2
0
        public void DrawTip(IBone bone)
        {
            if (Event.current == null || Event.current.type != EventType.Repaint)
            {
                return;
            }

            BoneDrawingUtility.DrawBoneNodeOutline(bone.tip, Styles.tipColor, GetScale() * 0.5f);
        }
예제 #3
0
        public void DrawPreviewTipFromTip(IBone bone)
        {
            if (Event.current == null || Event.current.type != EventType.Repaint)
            {
                return;
            }

            var mousePosition = GetMouseWorldPosition();
            var scale         = GetScale(bone.tip, mousePosition);

            BoneDrawingUtility.DrawBoneBody(bone.tip, mousePosition, Styles.previewColor, scale);
            BoneDrawingUtility.DrawBoneNodeOutline(bone.tip, Styles.previewColor, scale);
        }
예제 #4
0
        public void DrawBone(IBone bone, bool selected)
        {
            if (Event.current == null || Event.current.type != EventType.Repaint)
            {
                return;
            }

            var scale = GetScale(bone.position, bone.tip);

            BoneDrawingUtility.DrawBoneNodeOutline(bone.position, selected ? Styles.selectedBoneColor : color, scale);
            BoneDrawingUtility.DrawBoneBody(bone.position, bone.tip, selected ? Styles.selectedBoneColor : color, scale);
            BoneDrawingUtility.DrawBoneNode(bone.position, selected ? Styles.selectedNodeColor : Styles.nodeColor, scale);
        }