新手该怎样学习cocos creator?(内含最新3.8视频教程)
现在很多同学想做微信与抖音小游戏创业,很多都在学习Cocos Creator游戏开发,网上的资料也很多,今天给大家分享博毅创为的Blake老师整理的Cocos Creator的学习路线。
不管你是已经工作了,还是正在学习中的Cocos Creator初学者,如果你想在游戏开发行业中有更高更远的发展,请用五分钟阅读下面的文章(文末最新3.8视频教程)。
1: JavaScript与TypeScript程序设计;
由于可以跨平台发布,同时要能支持h5的游戏,cocos creator选择了JavaScript与TypeScript来做为它的开发语言,所以我们要先学习JavaScript与TypeScript。TypeScript是基于JavaScript的一个语法糖,运行的时候被编译为JavaScript,所以我们要先学JavaScript再学TypeScript。语法涉及的知识点主要包括如下:
- JavaScript变量,表达式,顺序执行,条件判断,循环语句,打印函数
- JavaScript基本数据类型,函数,object(表),数组,字符串,函数调用,Math数学库;
- JavaScript 模块, require,new机制,this传递;
- JavaScript实现面向对象:类,继承,重载等;
- TypeScript常用类型与类型定义;
- TypeScript面向对象:类,数据成员,成员函数,构造函数;
- TypeScript面向对象:继承,重写,静态数据成员,静态成员函数等;
- TypeScript枚举,Lamda表达式,名字空间,类型转换as,export与import机制;
搞完这些语法核心点,基本上JavaScript/TypeScript就么没有问题了。这里有JavaScript/TypeScript免费教程,可以看下。
2: Cocos Creator 3.x 2D/3D基础开发与使用
Cocos Creator版本很多,目前最好采用的是Cocos Creator 3.x来开发游戏,2.x官方已经表示不会再更新与维护了,现在大部分的企业都切换到3.x来做。一开始我们就从3.x开始。Cocos Creator 3.x全新设计了引擎,是一个纯3D引擎,尽量不要有先学2D不学3D这种想法,从3D开始到最后再学2D,2D是3D的特殊形式。常见的Cocos Creator 2D/3D基础知识点如下:
- Cocos Creator版本历史,编辑器界面菜单介绍与详解;
- 3D 物体成像的基本原理;
- 3D渲染管线的渲染基本流程详解;
- 3D编辑器的基本编辑操作;
- 场景树与组件化开发模式;
- Cocos Creator 三维向量详解;
- 节点的平移,旋转,与缩放;
- 预制体的实例化与系统事件响应;
- MeshRenderer组件的使用详解;
- 3D骨骼动画的使用详解
- 天空盒与雾的使用详解;
- 摄像机的使用与分组管理
- 各种内置光源的使用:点光源,平行光,聚光灯等;
- Unlit Shader模板详解;
- 基于PBR的物理渲染;
- 3D物理引擎的基本配置与刚体,碰撞器编辑;
- 物理引擎的射线拾取,碰撞检测;
- 2D UI Canvas的详解与配置;
- Sprite2D 的使用详解;
- Label与Button组件的使用详解;
- Mask, Layout, Scrollview组件的使用详解;
- Widget组件与屏幕适配;
- 声音播放与LocalStorage;
- 定时器与节点删除;
- Ab包的资源加载,卸载与管理;
- 游戏进度条的几种做法;
- Tween缓动对象的使用详解;
- Json序列化与反序列化;
- 游戏数据的存储;
- 游戏摇杆的制作;
- 2D物理引擎的使用与碰撞检测;
- 微信小游戏的分包加载;
- 第三方远程资源部署;
3:通用游戏框架的设计;
学习完基础知识后,为后面游戏开发与创业做准备,我们需要把通用代码做成一个框架,然后用同样的方式来组织管理开发不同的项目,最大限度地重用代码,所以接下来我们就要学框架设计,自己整理处框架。
- 框架设计地基本原则与启动流程;
- 基于AssetsBundle的资源管理模块设计;
- 游戏开发中常用的工具函数: 随机,字符串拼接等;
- 框架的日志打印模块;
- 框架的自定义事件订阅与监听模块;
- Timer定时器模块;
- 常用Http的功能模块:上传,下载,拉取数据,与服务端通讯等;
- 声音的管理与播放模块;
- Excel表格数据读取模块;
- 节点池模块的封装与管理;
- WebSocket网络模块的封装与管理:断线重连,数据通讯等;
- Protobuf序列化与反序列化模块;
- UI框架模块;
- 2D/3D寻路导航模块与地图编辑器;
- 2D/3D 地图路径编辑模块
4:基于通用框架的项目实战:
接下来框架搭建好以后,就使用这个框架来做一些项目,掌握游戏项目的开发与组织,掌握游戏开发中的一些常用的需求与设计,这个时候我们可以选取复杂一点的项目来做练习,我们以RPG游戏项目实战为例:
- 项目的创建与框架的模块的选取与整理;
- 项目的资源制作与整理,资源动画+界面的制作与美术对接;
- 编写游戏的主线场景跳转与流程;
- 编写登录与资源动态加载流程;
- 显示游戏地图与地图世界;
- 寻路与导航系统接入;
- 游戏战斗的ECS设计: ECS World, Component, System,现在ECS很流行;
- 根据地图创建物体:玩家,怪物,传送门,NPC等;
- 角色的寻路导航的整理与实现;
- 角色的摇杆控制;
- 摄像机滚动地图与跟随玩家;
- 游戏地图的Zorder重排;
- NPC的自动导航与巡逻;
- NPC的对话设计与交互;
- 玩家的UI血条设计;
- 玩家的技能释放与攻击;
- 目标的伤害计算与死亡;
- 游戏数据配置表的接入,学会与策划对接;
- 游戏的打包与发布;
- 微信小游戏的提交审核与上传;
学完这些以后,你将会有自己的框架,能力的基于框架来开发自己想要的游戏类型。
5:游戏渲染与shader开发
当我们开发一些特殊功能的时候,需要很好的渲染效果与Shader开发,这个时候我们需要自己开发Shader,可以学习Cocos Creator 3.8的shader开发主要包括如下:
- Shader数据传递语法: CPU传GPU,渲染管线数据传顶点Shader,顶点传片元;
- Cocos Creator配置渲染管线的语法; zwrite, ztest等;
- glsl 常用的Shader 数据类型;
- 逻辑运算,条件判断,循环语句;
- 矩阵运算与数组语法;
- 常用的glsl内置函数;
- 向量,矩阵等常用的数学知识;
- 渲染管线全流程详解
- Unlit Shader模板详解;
- 光照计算与发现贴图;
- 逐顶点与逐像素光照;
- 兰伯特与半兰伯特;
- 冯高光与布林冯高光;
- 法线贴图的原理;
- PBR美术工作流;
- Ztest与Zwrite核心机制详解;
- 立方体纹理原理;
- 光照计算衰减;
- 阴影计算的原理;
- 菲涅尔特效;
- Shader常见的案例实战: uv动画,噪声溶解,顶点正弦,水面,镜面反射,倒影等;
6:性能调优与分析:
- 常见的算法思想与优化:贪心,动态规划,查表等;
- 内存分析工具,profiler性能分析工具等;
- Drawcall分析与优化;
- Setpasscall 分析与优化;
- 包体裁剪与优化:纹理,字库,3D模型等;
- 性能定位与分析;
- 日志定位于分析;
- 云测试与兼容性分析;
经过这些板块的训练与练习,你终将称为一个Cocos Creator的高手;
最新Cocos Creator3.8视频教程
最后
推荐一位Cocos Creator干货博主Blake老师
上面的课程大部分都是他免费分享的
不管是对刚入门的小白或者需要提升的各位来说,他分享的课程都是干货满满的
当然他还有系统学习班,有需求的同学可以去了解一下