当前位置:手机游戏 > 手游资讯 > 软件教程 > [空洞骑士超级冲刺在哪]用Unity重现《空洞骑士》的苦痛之路(4)——特效篇

[空洞骑士超级冲刺在哪]用Unity重现《空洞骑士》的苦痛之路(4)——特效篇

作者:佚名 来源:哪吒游戏网 2019-10-03 17:23:29

[空洞骑士超级冲刺在哪]用Unity重现《空洞骑士》的苦痛之路(4)——特效篇,哪吒游戏网给大家带来详细的[空洞骑士超级冲刺在哪]用Unity重现《空洞骑士》的苦痛之路(4)——特效篇介绍,大家可以阅读一下,希望这篇[空洞骑士超级冲刺在哪]用Unity重现《空洞骑士》的苦痛之路(4)——特效篇可以给你带来参考价值。

空洞骑士全徽章_空洞骑士 灵魂暴君_空洞骑士超级冲刺在哪

作者繁华如梦授权游资网转载

前言:

终于来到本系列的最后一篇,感觉整个人都快肝废了。本来想鸽的,最终凭着最后一点肝续了下来。

1.jpg

在之前的篇章中,我们已经完成游戏主体的搭建。接下来只需要添加上对应的特效,就能够使整个游戏变得更加完整。(PS:本期中代码并没有过多讲解且并不完整,说得最多的是思路空洞骑士超级冲刺在哪,还请留意)

超级冲刺特效

超级冲刺的特效大致是由4种特效组合来完成的,分别是:

1.冲刺特效

2.聚集特效

3.聚集完成特效

4.地面水晶

在上面的的特效中,某一部分由于找不到对应的图片,将不会与原版一样,而且其中还有与人物动画进行配合的部分,将不会实现类似的细节。还请各位童鞋留意。

聚集与冲刺特效

聚集状态与冲刺状态下的特效,都是使用的帧动画来进行制作的。在合适的地方播放该帧动画即可。此处就不在多说了。

聚集完成特效

聚集完成的特效,由于缺少相关的序列帧,此处只能自己搭建图像来近似相关的图像以及动画。流程就是,先参照原版游戏特效画面,自己通过游戏素材搭建出一帧帧画面,并通过代码控制物体的显示,来模拟出相应的效果。(还好这个只有4帧,多了我还真的吃不消)大致帧序列如下:

2.jpg

聚集完成特效序列帧

(盗文章的人实在是太多了,不知道加水印是否有用)

地面水晶

在超级冲刺的时候,地面会随时间向上生成紫色的水晶,并向周围扩散生成。其中有一个小细节,就是水晶只会生成在地面,在空中不会进行生成。此处,我们偷一下懒,水晶并不是动态生成,而是一开始搭建好的,然后在需要生成的时候,通过朝地面打射线的方式判断是否在地面,来决定是否显示水晶。如下图:

3.jpg

一开始搭建好的水晶特效物体

特效组合后效果如下:

4.gif

完整的超级冲刺特效

代码大致如下。其中考虑到在墙上的超级冲刺,需要事先设定好转向的旋转信息,防止动态修改出现误差:

空洞骑士全徽章_空洞骑士超级冲刺在哪_空洞骑士 灵魂暴君

Quaternion leftQua; //超级冲刺特效地面水晶在墙上的旋转

Quaternion rightQua;

GameObject particleObj; //超级冲刺物体(紫色水晶)

void Start()

{

particleObj.transform.Rotate(new Vector3(0, 0, -90));//初始化左右旋转后的四元素,用于后面特效转向

leftQua = particleObj.transform.rotation;

particleObj.transform.Rotate(new Vector3(0, 0, 180));

rightQua = particleObj.transform.rotation;

particleObj.transform.Rotate(new Vector3(0, 0, -90));

}

public void SuperSprintFunc()

{

if (Input.GetKeyDown(InputManager.Instance.superKey))

{

....

}

else if (Input.GetKey(InputManager.Instance.superKey))

{

....

LookParticObj();

}

}

public void LookParticObj()

{

GameObject tempObj = particleObjs[lookLevel];//particleObjs 数组存储所有的特效(水晶)物体

SpriteRenderer[] renderers = tempObj.GetComponentsInChildren<SpriteRenderer>(true);

空洞骑士超级冲刺在哪_空洞骑士 灵魂暴君_空洞骑士全徽章

for (int i=0;i<renderers.Length;i++)

{

ParticObjIsLook(renderers[i].transform);

}

}

public bool ParticObjIsLook(Transform objTrs)

{

RaycastHit2D hit2D;

if (isClimb) //如果进行了爬墙状态 射线发射方向改变

{

if (nowDir == PlayDir.Right)

{

hit2D = Physics2D.Raycast(objTrs.position, Vector3.right, boxSize.y, playerLayerMask);

}

else

{

hit2D = Physics2D.Raycast(objTrs.position, Vector3.left, boxSize.y, playerLayerMask);

}

}

else

{

hit2D = Physics2D.Raycast(objTrs.position, Vector3.down, boxSize.y, playerLayerMask);

}

if (hit2D.transform!=null)

{

objTrs.gameObject.SetActive(true);

return true;

空洞骑士超级冲刺在哪_空洞骑士 灵魂暴君_空洞骑士全徽章

}

objTrs.gameObject.SetActive(false);

return false;

}

复制代码

二段跳特效

二段跳特效也是使用2种特效来组合完成的。分别是二段跳的翅膀光翼,以及落下的羽毛特效。光翼没有对应的素材,此处直接跳过。只使用Unity的粒子系统来制作与羽毛落下的效果。

制作特效前,首先先找到对应的羽毛图片,如下:(注:此处图片是我在PS中切出来的3张单独的图片。)

v2-42aae58681810abaf035bffa2aa47d39_hd.jpg

3张不同形态的羽毛图

然后为3张不同的羽毛新建不同的材质。之后在着色器选项中,选择Particles/Additive,再在后续的选项选择素材羽毛图片即可。虽然2D的精灵图应该是使用着色器Sprites/Default,但是我们这里选择粒子特效的着色器,效果更好(PS:着色器可以自由选择,你觉得好看就行)。如下图:

5.jpg

新建材质属性

接下来新建一个空物体,并添加上粒子系统组件(Particle System),在Renderer(渲染)模块下的material选项,选择我们创建好的材质。如下图:

总结:以上内容就是针对[空洞骑士超级冲刺在哪]用Unity重现《空洞骑士》的苦痛之路(4)——特效篇详细阐释,如果您觉得有更好的建议可以提供给哪吒游戏网小编,[空洞骑士超级冲刺在哪]用Unity重现《空洞骑士》的苦痛之路(4)——特效篇部分内容转载自互联网,有帮助可以收藏一下。



上一篇: [dnf增幅规则]DNF增幅大狂欢活动规则 三弹增幅狂欢活动详细时间

下一篇: [塞尔达传说套装]《塞尔达传说荒野之息》套装图鉴及获得方法

本文标签: 空洞骑士超级冲刺在哪 空洞骑士 灵魂暴君 空洞骑士全徽章
猜你喜欢