Unity采用的是左手坐标系,与3DMax的像素比例为1:100
unity中的UV动画是对材质纹理偏移量offset参数值的修改以达到动画的效果,UV类似于xy
贴图->材质<-Shader(着色器)
特效制作工具和插件:3DMax,AE(2D),Maya,Unity Effect,Unity Xffect插件
给策划和测试线上展示功能效果:录制视频+Ps转换为Gif
利用辅助工具(FindDupFile)减少项目中的大量重复贴图
贴图的边长像素尺寸格式为2的N次幂
DoTween:
using DG.Tweening 引入命名空间
transform:
transform.DOMove(new Vector3(x,y,z),s(时间))
transform.DORotate(new Vector3(x,y,z),s)
transform.DOLookAt(new Vector3(x,y,z),s)
transform.DOScale(new Vector3(x,y,z),s)
震动:
transform.DOPunchPosition(new Vector3(x,y,z),s,f(频率),d(力度))
transform.DOShakePosition(s,Vector3.one,f,90)
material:
Material material = GetComponent<MeshRenderer>().material;
material.DOColor(Color.red,s)
material.DOColor(Color.red,"颜色属性名",s)//此项用于默认颜色属性名被修改的情况下,添加新的颜色属性名以解决
material.DOFade(a(透明度值),s)
Gradient//unity自带颜色渐变工具,可视化编辑
public Gradient _gradient;
material.DoColor(_gradient);
camera:
camera.DOFieldOfview(v(视图远近值),s)//此项用于放大镜效果
camera.DOShakePosition(s,d,f)
text:
Tweener t1 = text.DOText("wwwwwww",s)//逐字显示"wwwwww"
t1.SetEase(Ease.Linear)//设置动画曲线匀速状态
AnimationCurve//unity自带动画曲线,可视化编辑
public AnimationCurve _curve;
t1.SetEase(_curve);
Sequence://队列,按顺序播放多个动画
Sequence quence = DOTween.Sequence();
quence.Append(t1,2);
quence.Join(t2,2)//在播放t1动画时加入t2动画在2秒内一起播放
quence.AppendCallback(Test);//执行回调方法Test
quence.AppendInterval(2);//播放完t1和t2动画后延迟2秒播放t3动画
quence.Append(t3,3);
t1.SetLoops(-1,LoopType.Yaya);//动画在一个周期之间无限循环
t1.SetSpeedBased();//时间类型参数转化为速度类型
t1.SetID("name");
DOTween.Play("name");//缓存ID以免后期使用多次相同动画而消耗性能
t1.OnComplete(()=>{xxxx});//动画结束后执行回调方法。回调还有OnPlay,OnPause,OnUpdate,OnStart
transform.DOPause()//动画暂停
IEnumberator://与unity中的携程联用
t1 = transform.DoMove(Vector3.one * 2,1);
t1.SetLoops(3);
yield return t1.WaitForElapsedLoops(2);
Debug.Log("ss");//动画循环2次后执行此逻辑
yield return t1.WaitForPosition(2);
Debug.Log("ss");//动画播放两秒后执行此逻辑