小结
在这节课中,我们完成了对中级篇引擎的改造,包括:
- 使用全局积木、返回值积木、扩展来简化代码;
- 使用基于多莉的克隆体交互引擎,替代原来的列表交互。
最终,我们完成了一个相对完整的射击游戏引擎。之后的教程里我们将在这个引擎的基础上进行开发。
引擎使用方法总结
引擎完成了,现在我们来看看这个引擎提供了哪些功能:
“通用”模块:
- 预设克隆体信息、ID:
- 克隆体信息读写:
- 检测克隆体是否存在、删除克隆体(替换原版的删除积木):
- 图层排序:(结合广播使用)
“Game”模块:
Game 模块中的积木主要为“实体”类克隆体服务。
- 实体初始化、数据上传、显示渲染:
- 实体初始化:将初始数据读到 ID、x、y 等私有变量中;
- 通过修改 x、y、造型等私有变量,改变角色的数据,以及渲染效果;
- 每帧上传 x、y 等私有变量的值。
- 计算类积木:如计算到某个克隆体的距离、两个克隆体间的距离、角度差、坐标系转换等。
- 实体生成类积木:包括生成人物、生成子弹、添加血条,随机选点等。
(注:这些东西仅用于实体类的克隆体(跟随摄像头的克隆体),一般克隆体不需要使用)
其中,实体生成可以配合预设数据使用,可以为生成的实体提前设定数据:
4障碍检测、碰撞箱限制类积木:
5运动类积木:
- 遍历检测类积木:
第二课引擎源码
改造完成后的射击游戏引擎源码可以在这里找到:
Gandi:《高级教程第二课源代码》
虽然这个引擎实现的效果和中级篇的成品相同,但是底层已经被完全改写,变得更方便使用。
跟随教程,完成以上练习,将你的作品发布在“和Arkos制作闯关射击游戏”星球中,参与射击游戏投稿活动!~
下节预告
在下一节课中,我们将编写游戏主菜单、选关器、过场动画。
上一节:03 继续改造
下一课:第三课
<iframe
width="100%"
height="800px"
scrolling="no"
src="https://www.ccw.site/embed?id=STG303/Arkos/Lec2/05&type=comment"
title="{射击课高级篇-第二课-05}"
frameBorder="0"
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share"
allowFullScreen
scrolling="0"
></iframe>