随笔分类 - Unity3D
摘要:近期将之前的跑酷游戏demo拿出来重新做了一遍,解决了之前2个遗留bug。 虽然罪魁祸首都是FixedUpdate,但细节又不太一样。这里记录一下 1.点击空格键,角色会跳跃。而有时会跳的比之前高很多(使用Rigidbody.AddForce) 解决: AddForce之前应该清一下速率,因为是射线
阅读全文
摘要:出处:http://answers.unity3d.com/questions/578393/clear-console-through-code-in-development-build.html Debug.ClearDeveloperConsole()也可以用,但稍麻烦些。
阅读全文
摘要:网上有一个版本,但是调了半天用不了。于是自己动手写了一个 单个预览 批量预览 使用: 下载地址: http://files.cnblogs.com/files/hont/AnimatorClipPreviewer1.1.rar
阅读全文
摘要:回到 Animator深入系列总目录 测试Unity版本为5.2.1 人形动画的接口都有标注 本列表不包含所有标注为过时的方法 目前该详解还有不少缺漏,有时间持续更新 2016/8/16更新CrossFadeInFixedTime接口描述 1.Vector3 angularVelocity { ge
阅读全文
摘要:回到 Animator深入系列总目录 1.状态 1.1状态简介 简单的不做介绍了,需要特别注意: Paramter勾选后可以指定参数控制具体属性 Write Defaults勾选后表示播放这个状态时,是只运用动画剪辑修改的几个关键字属性(不勾选),还是应用所有属性(勾选)。 举个例子,一个第三人称角
阅读全文
摘要:回到 Animator深入系列总目录 Q: 如果想做角色负伤的一套动画,但是又和原有状态机不冲突,只是想换动画剪辑,应该怎么办? A: 新建一个层,设置为同步模式。这时候你不能在同步层添加状态,但你可以替换动画剪辑。 官方的解释是: Sometimes it is useful to be able
阅读全文
摘要:花了不少时间完成了这篇Unity Animator学习系列文章,其中大多数内容都来自个人实践,包括API部分很多都是亲测,期望和网上的诸多教程达到互补。 相关参考文档 Unity Animator官方组件文档 Unity Animator官方脚本文档 圣典的部分汉化文档 Unity官方的Animat
阅读全文
摘要:回到 Animator深入系列总目录 要让代码控制IK,需要先在Animator中打开IK pass 然后,和IK相关的代码需要放到相应的函数中去: 而如果是StateMachineBehaviour,IK操控的代码是在: 测试脚本: using UnityEngine; using System.
阅读全文
摘要:回到Animator深入系列总目录animator.SetTarget(...);可以在播放前预判剪辑播放后的位置,但只限于人形动画参数1是预判的关节,参数2是映射的剪辑时间调用后通过targetPosition,targetRotation来获得坐标和旋转测试代码:void Update(){ ...
阅读全文
摘要:回到Animator深入系列总目录一开始会理所当然的觉得,匹配是这样的:但结果却是这样的(右边的Cube是匹配目标):感觉这个接口应该是专门为攀爬之类的动画准备的,属于被动匹配位置,移动整个对象去匹配所以像游戏中的斜面双脚的IK匹配,就和这个接口没关系了:OK,下面附上测试代码:using Unit...
阅读全文
摘要:回到Animator深入系列总目录Animator自带了简单的动画录制,回放功能。但可惜的是不支持持久化的数据输出。因而不能作为录像保存不过这种可以作为竞速,格斗类游戏在结束时经常出现的游戏回放,还是比较有用的测试所用脚本using UnityEngine;public class Animator...
阅读全文
摘要:无意中翻到这篇问答LINK,发现了Sample的用法 如果想让Animation在编辑器状态下预览,也可以用这个接口 当你想要直接获得动画的运行结果,而不是等帧数执行到这,这时候就得调用Sample:
阅读全文
摘要:回到 Animator深入系列总目录 首先这个脚本必须继承自StateMachineBehaviour 然后切到Animator面板,选择状态机里的任意状态,点击Add Behaviour即可挂载 这时运行游戏,当状态机运行至Jump状态时,程序打出Log 注意 1.状态机脚本可以挂载到Layer上
阅读全文
摘要:回到 Animator深入系列总目录 官方文档给出的信息非常含糊 测试了一下,首先必须是含有根运动的动画,才会得到DeltaPosition/DeltaRotation的值,这个值是相对于上一帧的根运动位置 并且非人形动画也可以获得该值 对于修改根骨骼位移RootMotion,会用到这两个参数,可以
阅读全文
摘要:回到Animator深入系列总目录Animator的SetFloat接口可以设置阻尼,并且4种类型变量只有float是支持阻尼的。public void SetFloat(int id, float value, float dampTime, float deltaTime);当设置阻尼为0.2时...
阅读全文
摘要:经过测试,DebuggerHidden只对输出的日志有影响。对编辑器的控制台输入没有影响你可以通过这个特性避免日志log有一堆的堆栈信息并且测试过发现Debug.LogError也不支持该特性,和Debug.Log一样没有堆栈跟踪只有抛出异常才会有堆栈跟踪log输出:Exception: !!! ...
阅读全文
摘要:我最初想直接修改.anim文件但通过后来得到的信息,其实根运动状态储存在FBX.meta文件里,转出的.anim文件虽然也有根运动的信息但是算是塌陷过的,无法进行开关操作。这是我针对有根运动.anim文件和无根运动的.anim对比图:后来根据论坛查到的信息,具体参数在meta下的这条属性中:huma...
阅读全文
摘要:如果直接在脚本里改播放速度,会报出如下警告: 之前没有很好的解决方法,但根据评论里的新方法,我试了下,可以控制播放正负方向了:
阅读全文
摘要:Fragment+random: Vertex+random, Vertex+plain Vertex+Sound Plexus like 写了个大概,暂时没这方面需求先放这边了。 C4D原版片段和克隆都是作为容器使用,但是顶点没做成容器有点不能理解。官方也不更新这个模块。。 这个工具实现了clon
阅读全文
摘要:修改time信息并不会立马生效,动画信息修改是在这一帧结束统一执行的。 当normalizedTime设置为0-1之外的值时,值并不会被约束回0-1范围,而动画会被约束播放到0-1之间的位置
阅读全文