Cocos Creator复刻Steam热门解谜游戏!这两个宝藏视频教程,带你上道游戏开发
共 1841字,需浏览 4分钟
·
2022-05-29 16:30
想要系统学习游戏开发?今天和大家分享两个在 Cocos 第4期征稿活动中获得一致好评的“宝藏”系列视频教程——跟着开发者 Sli97 用 Cocos Creator 3.4.2 实现《Cramped Room Of Death》和《迷失岛2》,上道游戏开发吧!
Sli97 目前在字节跳动游戏平台负责 Web 开发工作,利用闲暇时间录制了这两款游戏的开发教学视频,并将项目开源。教程内容丰富、结构清晰,每集围绕一个小功能点展开,兼顾理论思路与实践,非常适合初学者学习。
对于想要入门 Cocos 的小伙伴,Sli97 也给出了自己的学习路线建议:
首先要打好 TypeScript 语言基础,因为 Cocos Creator 推荐的开发语言就是它。
然后可以把 Cocos 官方 B 站各种优秀的教学视频看一遍,特别是放空老师的视频,每一部都是精心制作,绝对是 Cocos 学习不容错过的资料。
有一定的使用经验后,可以去 Cocos Store 上学习各种项目的源码,进步会很快。
《Cramped Room Of Death》
>>左右滑动查看更多
《Cramped Room Of Death》是一款像素风休闲解谜益智游戏,融合了推箱子+战斗+Rougelike 玩法。Sli97 用45集开发教程复刻了这款游戏。
教程主要内容
通过数据动态生成瓦片地图
通过发布订阅模式对元素交互进行彻底解耦
通过程序化编辑动画方式生成 animation clip
通过有限状态机完成游戏元素状态切换
利用数据与 UI 分离思想实现撤回功能
v3.4.x 新增的 Marionette 动画系统的使用
……
整体开发思路
整体方向上,贯彻面向对象程序设计等理念,运用便于游戏可持续迭代的设计模式。
首先分析游戏元素。玩家人物、骷髅、烟雾、地刺、地裂都有非常多相识之处,例如具有状态、方向等,通过 UML 类图来描述代码继承结构。
然后理解游戏的各种元素的交互方式。例如人物跟墙、跟悬崖的碰撞要用数据描述出来,然后通过各种设计模式优化数据间的沟通。
最后每个独立的元素都完成之后,就可以把他们都串联在一起,实现关卡切换、场景切换等。
资源链接
视频地址:
在线预览:
源码下载:
https://store.cocos.com/app/detail/3721
《迷失岛2》
>>左右滑动查看更多
《迷失岛2》是一款非线性剧情推进式的点触解谜游戏。Sli97 利用发布订阅设计模式彻底解耦,秉持数据与 UI 分离的思想,贯彻所有操作都先改变数据再影响视图,这对需要存档和撤回的游戏来说必不可少。
教程主要内容
5个游戏场景,包括一个小游戏
场景跳转
主界面(菜单)
背包系统
UI 系统
声音系统
存档功能
整体开发思路
首先游戏有多个场景,每个场景的数据又要互通,所以需要一个全局的数据仓库来保存。
其次对游戏元素进行分类,写代码的时候才能更好地利用面向对象的思维对代码进行复用。本游戏项目的元素可以分为两类:能放进背包的 Item 类物品和能交互的 Trigger 物品。
游戏需要实时存档功能,所以对游戏所有需要保存的数据都建立对应的数据来保存。
最后把上述核心的游戏要素串联起来后,再完成一些相对独立的模块,例如小游戏、UI 等。
资源链接
视频地址:
在线预览:
StartDemo(美术资源):
https://gitee.com/sli97/cocos_cotton_start_demo
点击文末【阅读原文】前往 Sli97 的 B 站空间,观看视频教程。作者正在更新行为树系列教程,Shader Effect 特效系列也在规划中,感兴趣的小伙伴可以持续关注一下。
C 姐常常会收到一些留言:想入门 v3.x 却又不知道从哪里开始学起?哪儿有 Cocos Creator 的学习资料呢?——有类似苦恼的小伙伴请收好这两份资源合集:v3.x 学习资料汇总、年度精华干货汇总,一定能带你更高效地入门和学习 Cocos!
*所有资源仅供学习,不作商业用途
*部分素材源于网络,如有侵权请与我们联系
往期精彩