全程使用Cocos Creator作为游戏编辑器进行开发,在此总结使用过程中遇到的一些问题与解决方案,不对具体的功能与API进行阐述。属于个人使用总结,有使用不当的地方望见谅。
版本管理
Cocos Creator并未集成git、SVN等代码版本控制系统,在分工开发中,最好根据业务场景分配游戏场景*(scene)到开发者手中,将动画(animation),脚本(Script),静态资源(resources)*按照场景分别创建文件夹进行存储。
若使用git作为版本控制系统,建议操作如下:
- 首先建议在本地创建一个根目录文件夹,用于存放不同版本的游戏代码,其中每一个文件夹代表一个游戏的整体代码,可在
git clone/git pull
后修改文件夹名称达到区分版本效果。 - 多个开发者在同一版本的基础上进行开发,当开发完成时,需按顺序进行版本
git push
,即确认当前版本为最新版本后,将本地更新过的文件以及.meta
文件在不开启Creator的情况下复制到最新版本的文件夹中,并覆盖旧的文件。完成后再次开启Cocos Creator自测后进行代码上传。
Sublime注意事项
使用Sublime作为Cocos Creator脚本编辑器,在移动已经通过Sublime打开的JS脚本文件时,Sublime上正在编辑的文件已经不是被移动过后的脚本文件,若此时ctrl+s
对文件进行修改和保存,会在被移动前的位置创建一个新的同名的JS脚本文件。
游戏界面控制相关
-
节点优先级:在同一个Canvas目录下,在层级管理器中的位置越靠下,Node节点的优先级越高,即背景图片应该位于Canvas子节点的最上部
-
使用更大的背景图片防止游戏穿帮:在iPhoneX 19.5:9,三星S918.5:9,iPhoe4 4:3等特殊机型中,传统6:9的设计分辨率比例往往会在屏幕两端出现黑边,要在不拉伸页面的情况下填满屏幕,就需要一个大于设计分辨率的背景图片,当屏幕比例大于设计比例时,继续显示设计分辨率之外的图片。
-
Canvas同级节点能够自动适应屏幕:在场景编辑器中粉色框代表设计分辨率,使用同级并位于Canvas下方额节点,在实际效果呈现时,该节点不以Canvas作为坐标系对照,而是以整个屏幕作为坐标系载体(
position.x
,position.y
值不变),能够达到一种伪“自适应”的效果。使用场景类似于通用按钮根据屏幕比例进行移动 -
图片分辨率限制:微信小游戏端限制图片分辨率最大为2000*2000,在Cocos Creator与微信开发者工具中,并不会进行报错提示信息,但是在扫描二维码进入的测试版本会提示错误
-
区别设计分辨率与图片分辨率:配合勾选的适配策略,会在不同分辨率的设备上对Canvas进行缩放,分辨率与文件实际大小与清晰度有关,与图片在Canvas中的长宽大小无关
节点相关
在Cocos Creator的层级关系类似于一个DOM树,可以从属性检查器看到每一个Node节点的信息。cocos2d-js提供了node.getChildByName()
,node.children
,node.parent
-
通过切换Node节点是否显示实现:
使用场景:点击Node1,Node1消失显示Node2,位置可以选择,对切图要求小,能够很好的对齐位置
properties: { active_node:{ default:null, type:cc.Node } }, onLoad(){ this.node.on(cc.Node.EventType,this.convert,this