目前正是H5小游戏的时代,面对现在主流最热门的H5开发引擎之一的CocosCreator,你想了解的都在这里!
Cocos Creator 一次开发多平台发布,能开发出主流的游戏开发平台,比如PC, Android, iOS, H5游戏。
其中H5技术的游戏,包含网页游戏和很多游戏平台的变种,如微信小游戏,抖音小游戏,华为小游戏,oppo小游戏, vivo小游戏,百度小游戏,小米快游戏等。
所以Cocos Creator可以一次开发多平台发布,这样大大节约了开发成本。
Cocos Creator 是一次开发多平台发布的游戏引擎。
现在H5游戏以及H5游戏的变种(微信,抖音,QQ)非常火,所以开发语言采用的是H5的开发语言,JavaScript, JavaScript是弱类型编程语言。
微软引入了TypeScript的强类型编程语言,TypeScript运行的时候也转成了JavaScript。
所以Cocos Creator的开发语言是JavaScript与TypeScript。
Cocos Creator 会为 assets 目录下的每一个文件和目录生成一个同名的 meta 文件,相信大家一定不会太陌生。
meta文件中有很多信息,我们这里只关心一个:uuid。
uuid 是 Creator 用来管理游戏资源的。它会为每个文件分配一个唯一的 id,图集会生成多个。由此可以了解在 Creator 引擎中,识别一个文件不是简单地通过 路径 + 文件名 定位,而是通过 uuid 来引用文件。因此可以在编辑器资源管理中,随意删除、移动文件。
Creator 生成 meta 文件有以下几种情况:
打开工程时
打开项目工程时,Creator 会先扫描 assets 目录,如果哪个文件还没有 meta 文件,此时就会生成。
更新资源时
更新资源也会引发 meta 文件的更新:
游戏引擎把游戏内容绘制到屏幕上,生成画面,游戏引擎通过OpenGL来控制显卡GPU显示物体。
游戏物体的绘制都是由GPU绘制完成的,游戏引擎代码控制CPU把要绘制的数据和资源传给GPU,GPU根据数据绘制出来。
GPU底层处理绘制都是以三角形为单元,每个显卡能同时处理的三角形数目是有上限的。
游戏场景中要绘制的物体,CPU分成几个批次提交给显卡GPU,就是几个Drawcall.。
例如,游戏中有100个物体要绘制,这100个物体,分成了5批提交给GPU,那么DrawCall就是5, cocos在运行的时候,会把DrawCall显示出来,这样我们能看到当前游戏的Drawcall。
游戏开发中的很多特殊的效果都是用Shader来实现。所以Shader开发在很多游戏项目里面很重要。同级别的程序员会Shader与不会Shader的差别就是3K左右。
Cocos Creator是基于OPENGL的,所以Shader的开发语言是GLSL,但是又不全是,Cococs Creator有一个自己的语法结构,内嵌GLSL的代码,最终Creator把它编译成GPU能够识别的Shader程序。
Cocos CreatorShader如何学习,可以从下面几块入手:
了解Shader 在游戏渲染中的位置,输入,输出,以及相关概念,如顶点,纹理坐标,渲染队列,裁剪剔除等。
了解Cocos Shader 的基本结构组成与Shader代码入口。
了解GLSL 开发Shader代码与GLSL的常用库函数
学习Shader的一些案例,在案例中掌握Shader开发熟悉cocos封装的Shader API。
Cocos Creator 是一款制作手游,H5小游戏的游戏引擎,简单上手非常快,一般学习Cocos Creator分成4个阶段:
学习JavaScript/TypeScript编程语言。
学习Cocos Creator基础知识,能掌握Cocos Creator基本使用;
学习Cocos Creator框架设计,组织项目,最好做一个项目来体会。
关注游戏技术中的一些专题版块解决对应的问题。
如果你是有程序开发基础的,大约2~ 4周就能上手;如果你是0基础,大约1~2个月左右。
开发小游戏的时候,如果包体超过了4M,是无法真机调试和发布的
这里有两个解决办法:
微信提供了分包机制,最多允许你4个4M的分包(1个主包+3个分包), 所以如果你项目在16M以内,可以使用微信的分包机制来解决。
如果大于16M可以做第三方的资源部署,把资源部署到第三方的服务器上,修改一下资源加载的地址即可,这样的缺点是要额外提供一个服务器消耗流量,一般我们用CDN来加速处理。
微信小游戏提供了小游戏的SDK,微信SDK直接使用wx.xxxx来编写就可以了,通常对接微信SDK的时候,直接编写代码wx.xxxx就可以了,对接微信SDK的时候要用微信web开发者工具来调试,其他的调试wx.xxxx就会报错。
如果我们有多个平台的SDK要对接,可以在同一个地方,通过判断当前是什么系统来决定到底是用wx.xxx,还是其他SDK,比如抖音 tt.xxxxx
目前H5技术的小游戏很火,各大超级App(微信,QQ, 抖音,支付宝,美团等),手机渠道(华为, oppo, vivo等)有很多流量,平台也需要把流量变现,所以各大渠道和平台都推出了自己的小游戏,玩家不用安装,点开就可以玩。
开发者做微信小游戏都会发到这些平台里面。目前比较好的一些小游戏平台有微信,QQ, 抖音,华为, OPPO, VIVO,配合平台的一些政策,很多小游戏都能有非常好的数据。
和传统游戏不一样,小游戏制作成本低,趣味性强,适合个人开发者与创业,可以把小游戏理解为视频界的短视频。
微信小游戏开发分为个人开发者与企业开发者。
企业开发者开发微信小游戏需要软著和游戏版号,个人开发者不用游戏版号。
软著也是可选的,也就是说个人开发者即使你是没有软著也可以上线发布的。没有版号开发者无法对接游戏内支付,只能通过游戏广告变现。
第一期关于CocosCreator的介绍先到这里,后续还会有游戏的Demo制作,优化技巧等的分享,希望可以继续关注我.
还有关于Unity的实用问题哟:
大家都在找的关于Unity的答案都在这里!