同一场景中,可能需要多个动画在运行时能够移动、缩放、旋转,要么手动在Animation窗口中给动画添加AnchoredPosition等属性,要么每个动画都要写一个脚本来控制变化,操作起来各种麻烦。花了一点时间简化了下,如果你有更简洁的,欢迎大家留言。
在菜单工具栏中添加AboutMoveOrScaleOrRotate来移动、缩放或旋转需要改变的预制体。
代码如下:
using System.Collections.Generic;
using UnityEditor;
using UnityEngine;
using UnityEngine.UI;
public class AboutMoveOrScaleOrRotate : EditorWindow
{
GameObject PrefabGo;
//是否移动
bool isMove = false;
float rate_Position_X;
float rate_Position_Y;
AnimationCurve CurvePosition_X = AnimationCurve.Linear(0, 0, 10, 10);
AnimationCurve CurvePosition_Y = AnimationCurve.Linear(0, 0, 10, 10);
//是否缩放
bool isScale = false;
float rate_Scale;
AnimationCurve CurveScale = AnimationCurve.Linear(0, 0, 10, 10);
//是否旋转
bool isRotate = false;