Animation View中可以在动画的某一时刻点击Add Animation Event,选择一个方法。当动画播放到那个时刻,就会调用这个方法。
也可以在Animation资源中直接添加,手动输入方法名。
可以修改的类型
Float,Color,Vector2,Vector3,Vector4,
Quaternion,Boolean
Animation Curve控制过度,右键加key
RootMotion 应用后则会相对自身坐标运动,否则参照世界坐标
Animation资源
Animation Clip、Animation
Mecanim
Animator为状态机系统文件,包含多个Animation
Asset Store
模型资源论坛(cgmodel.cn)
www.mixamo.com(最全的动画库)
Animator 动画状态机
Avatar 替身
Blend Tree 融合动画
Layer 分层动画实现多个部分不影响
IK逆向定位可以绑定其他物体
项目代码的调试:Console控制台,GUI,GUILayout,Debug.DrawLine()或OnDrawGizmos,MonoDevelop测试工具,Log File日志,UnityTestTool单元测试插件
ctrl s 保存
ctrl 滚轮 方法缩小代码
ctrl f,f12 搜索
Alt 上下 移动代码上下行
ctrl alt end/home 缩进
StartCoroutine(方法)
将复杂的工作分为几帧过多次来执行
IEnumerator go(){ yield return null;//停止一帧 yield return new WaitForSeconds(2f);//等待两秒再往下 yield return new WaitForFixedUpdate();//等待所有物理Update完成后 } //调用和停止方法 StartCoroutine(go()); StartCoroutine("go"); StopAllCoroutine(); StopCoroutine("go");
Invoke(string method,float time);//延迟执行程序 InvokeRepeating(method,time,repeatRate);//time为延迟多少时间执行,repeatRate多少秒重复 IsInvoke(method);//判断是否在运行 CancleInvoke(method);
以游戏时间为准,受时间缩放的影响
Component.SendMessage(string methodName,~);
SendMessageUpward 向自己和所有父对象搜索方法调用
BroadCastMessage 向物体和其所有子物体搜索方法调用
性能不好,用的反射
Component.CompareTag("tag")
比较本组件的标签是否与tag相同,这个方法比用双=好比较更有效率