消除游戏的话,可以考虑用tilemap做关卡编辑器,数据格式简单占用空间小
一个prefab构建后,可以被压缩百分之多少?比如一个400kb大小的prefab,构建后可以压缩到40kb或者甚至更小吗?微信小游戏限制到是构建后到包体大小 还是构建前到包体大小?
每关都需要不一样,没法用一个prefab吧。
就是你们不需要可视化编辑关卡?直接根据表来生成关卡?
没写过creator插件,还没写过creator 编辑器 拓展 插件,编译成本地程序怎么弄,听起来有点迷糊。
这个估计每个.tmx文件大小 跟prefab大小也差不了多少吧?
兄弟 你就弄成一个 prefab 或 scene 其他用代码来控制,1000多个prefab 维护起来非常困难啊
差不多可以压到 40kb。微信小游戏是限制构建后的。
兄弟,我有一個想法,把关卡元素做成prefab,这个应该不会很多,不会很复杂。然后在一个关卡编辑的场景(专门用来编辑关卡的),策划编辑完之后。写一个工具,解析这个场景(这个场景也是json),读取里面的位置和prefab信息,然后保存成你定的数据格式,json也可以,这样每个关卡的数据都会很小。
或者每个关卡一个场景这样维护起来方便,那些场景不用构建导出,有问题的关卡打开重新修改再导出
来看看解决方案
我是先加载 prefabe, 然后用这个prefab生成一个Node, 挂到一个paren里面去,然后设置这个node.active = false,然后读取解析Node里面的节点信息。 我没有生成Json(我不知道怎么把prefab转化成Json). 你说把关卡元素都做成prefab,不用原图片会节省prefab大小对吧?
我觉的把prefab转化成Json是多余的把,不管如何转化, prefab对包体的影响大小不会减小,因为需要先做一个关卡prefab才可以弄。
let self = this;
cc.loader.loadRes(path, function (err, prefab) {
if (err) {
cc.error(err);
}
let node = cc.instantiate(prefab);
node.parent = self.node;
node.active = false;
if(node){
let gole = node.getChildByName(‘关卡’);
if(gole)
func(gole);
else
callback();
}
else {
callback();
}
});
意思应该是把场景的所有元素单独拆开来 然后用脚本来控制元素的生成位置。这样就可以通过改变脚本参数来改变场景。
编译成本地程序其实就是用creator写一个编辑器而已,只是web版导出本地文件折腾很麻烦,所以才编译成exe,相当于做一个游戏那样去搞
写个关卡配置表,适当的适合读取适当的值。
用creator吗,可以导出json格式?
其实预制体不用那么多。 加载配置来实现关卡,也是可视化的(关卡编辑器),只是不同关卡加载配置不同。 金币大师 7千多关每张地图样式都不一样。 7千多个预制体那肯定是不行的,不能这么设计。
写一个prefab,然后配置每个关卡不同的信息,渲染在同一个prefab上?这样可以吗
本来就应该这样设置。
关卡导出工具,哪位同学给个思路呀
还有需要关卡导出工具么?