【第129期】游戏策划:感谢UE4,原来不用编程也能做高端游戏

我是酱油,这是第129期文章

如果说UE4和Unity的区别,对于我这种不擅长编程的人,前者初期体验起来像是游戏,一款能做游戏的游戏;后者才是正儿八经的引擎;

这几天在学习做升降电梯功能:

教程地址:

https://www.bilibili.com/video/BV164411Y732?p=29

1、当人物站在电梯上,按键盘E,电梯上升。

2、上升期间,再按键盘E,电梯会反向运动。

教程只有15分钟,看起来很短,结果折腾了好几天。这是第一次使用蓝图制作游戏,原来不用写代码也可以实现代码的效果,对于广大不懂代码的同学而言是个福音。

上成果图先:

其实,第一次做完并没达到预期效果:人物站在电梯上,按下键盘E,电梯就是不上升。反复看了几遍发现,移动的载体应该是Cube(电梯那块白板),而我却错把Box(嵌套在电梯上的碰撞体)拖过来当载体,那结果当然是电梯没动,而碰撞体却动了,但碰撞体又是无形的,没法看见它在运动。

修改完后,人物站在电梯上,按下E,电梯可以上升和下降了。

正当开心着,又测试出了新问题:人物离开电梯后,按E仍然可以对电梯产生效果……what?

于是继续反复看视频,这回楞是没找到原因。

很多时候学习一门技术,就是频繁遇到这种茬:一来自己找不到解决方法;二来又没人可以交流的;久而久之,就放弃了。

这也是写公众号的原因,相信有不少同学也是一样,有个聚集地,大家可以彼此倾诉下,或者可能你遇到的问题在我这儿也出现过,那就再好不过了。

后面学了一种排查bug的方式:运行游戏的同时开着事件图来找bug。

发现断开“组件结束重叠时”这个事件,对游戏没有丝毫影响,那问题可能就出在这里了。最后检查到“组件开始重叠时”的载体是Box,而“组件结束重叠时”的载体却是Cube,本来两者应该是统一的,但不知道自己怎么会抽风将两个设置成不一样的,修改之。

于是,到此功能就彻底完善了。

在排查bug查找资料期间,也挺有收获,比如:

1、FlipFlop的用法

按下C键,执行A分支。再按下C键,执行B分支。接着再按C键,再执行A分支,以此循环。

2、Gate的用法

鼠标左键按下,每帧都会执行。

鼠标左键松开,结束每帧执行。

你也打算学习UE4制作游戏或已经在学习的吗?欢迎给我留言,一起交流。

(0)

相关推荐