05 2018 档案
摘要:前面已经讲过 Spine自己动画状态机的动画融合,但是万一有哥们就是想要使用Unity的动画系统,那有没有办法呢?答案是肯定的,接下来,就说说如何实现: 1. 在project面板找打你导入的Spine 资源,选中它,点击鼠标右键,在弹出菜单中依次点击 Spine -> Instantiate(Me
阅读全文
摘要:想象这样一个效果,一个人被冰霜攻击命中,然后这个人整个就被冰冻了,那么spine动画要如何实现这个效果呢? 1.首先需要一个Spine动画,这个动画应该是相对静止的,因为人物已经被冰冻了,那么这个人儿应该就没法动了,所以冰冻的时候就播放这个动画。 2.需要改变这个spine的颜色,因为spine使用
阅读全文
摘要:在unity中,有这样一种情形,有许多的物体,都使用了相同的材质球,但是呢,具体的细节又有些微的不同,如果想要些微的改变每一个 网格的颜色,改变 渲染状态是不行的。 这时,就可以使用MaterialPropertyBlock这个API。这个类将被传递给 Graphics.DrawMesh 或者Ren
阅读全文
摘要:Spine支持一些自带的特效,这些特效,不需要在spine中制作,而只是通过在unity中添加一些脚本便可实现。 这里先讲解一个比较使用又酷炫的效果,幻影特效: 1. 首先,在SkeletonAnimation 所在的transform上挂载一个叫做 “Skeleton Ghost”的脚本。 2.
阅读全文
摘要:相信在使用Spine做游戏的时候,肯定会遇到这样的需求: 一个人物有一把大刀,要使用这把大刀去砍怪,伤害检测以这把大刀砍刀怪物为准,那么要怎么在一个看上去就是一体的Spine Object上绑定一个碰撞盒子,而且这个碰撞盒子还要跟随这个大刀移动呢? 这里有两种做法,先介绍第一种做法,纯使用Unity
阅读全文
摘要:在许多地方,都需要用到动画融合,unity的新版动画系统已经能够很方便的进行动画融合,那么使用spine的动画状态机的情况下,如何来进行动画融合呢? 官方有两种方案,一种是使用混合动作实现,另一种是使用spine的动画状态机实现,这里讲解一下状态机的实现: 将该脚本挂到一个挂有 SkeletonAn
阅读全文
摘要:一共有四个播放的组件: SkeletonAnimation:有点儿类似于 unity的 Animation,挂上一个spine资源,就可以跑了 SkeletonRenderer:SkeletonAnimation的父类,渲染出Spine的图像的组件 SkeletonGraphic:这个不大清楚 Sk
阅读全文
摘要:Spine事件特性: SpineEvent(string startsWith = "", string dataField = "", bool includeNone = true, bool fallbackToTextField = false) 这个特性,可以让你在unity的inspet
阅读全文
摘要:这个效果和 Unity的动画分层有点儿像,比如 一个人有一个跑的动画,还有一个站在原地挥手的动画,Unity可以通过动画分层,让人物只需要使用这两个动画实现边跑边挥手的动画效果。 首先介绍一下Spine的 AnimationReferenceAsset 组件。这个组件需要指定两个东西, 1.Skel
阅读全文
摘要:要想播放一个Spine动画,必须要在一个物体上绑定一个Spine播放的组件,这里暂时使用SkeletonAnimation组件。 然后就是编写动画的控制脚本。 这里提一个特性: [SpineAnimation]:这个特性可以获取到SkeletonAnimation组件中绑定的 Spine资源的所有
阅读全文
摘要:在unity的标准资源包中,包含了一个叫做 Third Person Controller的东西,这个东西是一个unity实现的角色控制器,下面来研究一下它是怎么实现的。 这个控制系统,主要由以下几部分构成: Third Person User Control Third Person Charac
阅读全文
摘要:要控制3D人物在3D世界中进行正常的移动、转向,一般有两种情况: 1.使用人物动画控制人物 的移动 转向 2.使用脚本控制人物 的移动、转向 对方案一: 对方案二:
阅读全文
摘要:第一个API,是将 一个世界坐标系的 向量 转换 为 transform 本地坐标的向量 第二个API,是将一个vector 向量投影 到 法线 planeNormal 所在平面。
阅读全文
摘要:一般来说,我们用到的是这个API: 但是这个还有一个重载的方法,叫做: 去官网上查了,暂时没有关于这个重载的解释,于是自己倒腾了一下,现在给出这个重载方法的解释: 前面两个参数与上面的方法意思一致,这里略过。 dampTime: 用 dampTime 长的时间,将 我们设置的叫做 name 的 fl
阅读全文
摘要:今儿在做项目的时候,给主角加上一个Rigidbody组件,设置如下图: 然后问题来了,我本来是想让主角通过重力控制,掉到地上,但是加上之后,主角反而朝着天上飞! 这TM什么鬼? 经过多番探查,发现是Animator惹的祸,在Animator中,有一个选项,是用来设置 动画是否控制物体移动 的, 如果
阅读全文
摘要:在制作动作游戏的时候,需要播放许多动画,同时还有个需求,那就是动画播放到一定时间时,给一个回调函数,好做对应的状态变更, 我查了一下,发现如果使用的是unity自带的动画系统,要做到这样的话,需要这样做: 通过以上代码可以看到,其实对于绑定回调函数,是传入的回调函数名字,而并没有使用类似于C#委托一
阅读全文
摘要:要将世界坐标转化为屏幕坐标,在UNITY中提供一个内置函数: Camera.main.WorldToScreenPoint( Vector3 Pos) 转化出的结果是一个Vector3变量,这里主要说一下 这个变量的z值 转换结果z值是根据 被转换点与主摄像机的世界空间位置来决定的。 比如 点A =
阅读全文

浙公网安备 33010602011771号