该文来自学习chutianbo老师的笔记,链接b站
摄像机
别问,问就是无脑cinemachine(233,我只会之这个) 点击 window ?package manager 左上角找到Unity Registry 中间直接找到这个插件下载即可 下载完之后我们在Hierachy中右键创建就可以找到这个cinemachine。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/d3a684e5635f421894943617817f9c99.png) 之后在Follow中直接跟随你需要跟随的角色即可
摄像机边界
在设置完之后我们运行会发现,我们很多虚空也会进入视角。 1.所以我们为这个CM vcm1(就是用cinemachine创建的相机)加入组件Cinemachine Confiner2D 2.创建一个空的GameObject为他加上组件polygon Collider 2D,然后把绿色框框拉到和需要显示的地图一样就行 3.直接将这个边界拉进去就行 ![](https://img-blog.csdnimg.cn/7f50f6f0961e443e8cf6aaf0095dbd9d.png)
粒子特效
1.创建 右键Hierachy?Effects ?particle System 关于每个按键怎么用emm,底下给到了官方链接
这里讲述一下简单的爆炸特效 ![在这里插入图片描述](https://img-blog.csdnimg.cn/399965306e184f478b2007327ffbc3e2.png) 最初始的素材![在这里插入图片描述](https://img-blog.csdnimg.cn/8514a9bb10b045978f9bd8e140b88474.png) 1.因为击中特效只需要一瞬间,且发射器应该为一个圆形 2.所以爆发粒子的时间应该是0 3.同时不需要重复
1.那么第一件事我们先替换掉粒子,可见我们一开始创建出来的粒子时白色的而不是我们所要的素材, ![在这里插入图片描述](https://img-blog.csdnimg.cn/0541984b5d6148f6acf0e4783f93e4df.png) 所以找到 Texture 这个模块,将mode改为精灵替换素材即可 2.设置形状找到shape模块 ![在这里插入图片描述](https://img-blog.csdnimg.cn/f297c12924ba4d16b3d6b825f1858cc9.png) 将shape改为circle圆形,如果是3d就是hemisphere。 Radius是圆的半径。 Radius Thickness:发射粒子的体积比例。值为 0 表示从圆形的边缘发射粒子。值为 1 表示从整个面积发射粒子。介于两者之间的值将使用面积的一定比例。 Arc就是角度因为需要一个圆就那是360
事实上我在做这里花了非常多时间,一位内我将scale更改了,导致圆变成了一个垂直于界面的圆,一般来说2d就是xy都是1就行 3.粒子爆发时间 ![在这里插入图片描述](https://img-blog.csdnimg.cn/6270caefac1c4ee88dde2cab155e0c22.png) 找到Emission将Rate over Time改为0,即一瞬间爆发即可
到这里为止,我们这个特效就算是做好了,但是有一点需要提的是,如果我们的特效是放在一个移动物体的身上且需要跟随物体移动 ![在这里插入图片描述](https://img-blog.csdnimg.cn/d1a05ab625ed428ca7035b645a403e62.png) 我们需要将Simulation Space这里改成World。![在这里插入图片描述](https://img-blog.csdnimg.cn/16260134dcec4fde9e9dc4d6c112a25a.png) 效果大概是这样,机器人向右边走,烟雾会有真实效果。
代码控制特效
这里用的例子是上面这个机器人的烟雾效果,大体应该都差不多
1.公开粒子特效属性 public ParticleSystem smoke; 2.将做好的特效拉进我们的公开属性中 ![](https://img-blog.csdnimg.cn/63ed78238b1e49d683abb3db85bf1be8.png) (这里其实有一个bug来着,就是我们如果先将这个特效作为我们机器人的子对象,那么这个特效只能从我们子对象下面拉进去,而不能从我们的预制件里拉进去,如果是从其他地方拉进去的话,那么等会代码要进行更改) 3.在函数中调用 //二选一 smoke.Stop(); // Destroy(smoke.gameObject); 这两个函数的差别如果没有报错的话,那么第一个是让粒子生命周期结束再消失,第二个是直接消失,无论粒子的生命周期还有多久 ![在这里插入图片描述](https://img-blog.csdnimg.cn/d851ef933a0b420895d6688f3f493172.png) 这里的Duration就是生命周期
链接unity官方档案:粒子系统 这片文章所使用的素材来自unity商店Ruby’s adventure 链接unity官网
|