都是要考虑的,还要结合游戏具体选择如何平衡。比较到底是添加删除costy还是多几个占内存的对象costly
比如在黑暗之魂。血源诅咒里,远景模型很占内存。所以如果你快速转视角,会看到很多远景从无到有闪现出来。因为它的算法还要考虑人物视角覆盖了哪些景物,但是加载是有时间的,所以还是会有瑕疵。
黑暗之魂。血源诅咒里,远处的敌人行动有时看上去会特别卡顿,其实因为远处的敌人不重要,他们的update方法调用频率低的关系
都是要考虑的,还要结合游戏具体选择如何平衡。比较到底是添加删除costy还是多几个占内存的对象costly
比如在黑暗之魂。血源诅咒里,远景模型很占内存。所以如果你快速转视角,会看到很多远景从无到有闪现出来。因为它的算法还要考虑人物视角覆盖了哪些景物,但是加载是有时间的,所以还是会有瑕疵。
黑暗之魂。血源诅咒里,远处的敌人行动有时看上去会特别卡顿,其实因为远处的敌人不重要,他们的update方法调用频率低的关系
好的,讲的很清楚了。确实优化是一个平衡的过程,蛮有意思的,感激解惑!
另外,我玩血缘打到两条狗那里就过不去了,然后吃灰到如今,太难了
chrome浏览器性能调试
大家的讨论真有意思,这篇帖子可以说很精华了,分享几个有用的信息
这个已经有游戏尝试了,如果地图是精灵组成的,确实有一定的优化,但是再一次,如果渲染不是性能瓶颈,这个优化意义就不大。另外,Tilemap 组件的实现,图块并不是节点和渲染组件,整个地图是由 Tilemap 自己负责渲染的,不存在节点数量过多的问题
从你的截图来看是这样,但是 GPU 的损耗并不均衡,说明在部分帧损耗很高,部分帧损耗很低,要检查原因是什么,看有问题的帧具体渲染了什么样的内容
我怎么感觉勾选自动释放资源,内存还是降不下去啊?
我是自己实现的tilemap地图,自己定义格式然后解析后new出不同的sprite节点,放到了根节点上,这样绘制的地图。没有直接用tilemap因为自己现实效率更高(逻辑简单),也方便后期扩展其他编辑玩法。
那像我这种情况能用到你们引擎的优化吗,地图大了节点数还是过多吧?
能开放什么机制让我直接传一个根节点,你们把它作为tilemap来整体渲染,并且裁剪不必要的节点,可以吗?不然我得为了用到tilemap的引擎优化而强制用tilemap组件了。
建议你测一下性能对比,你这样实现的话,填充率取决于地图尺寸,很可能非常大,可能是你的 GPU 渲染损耗高的原因,需要自己做 culling。另外,引擎需要遍历你的节点树来构造渲染数据,损耗也比 tilemap 高。
手动组装渲染数据比较麻烦,你可以看一下 example-cases 里面的 custom ia 范例,这个路子可以达到甚至超过 tilemap 的性能,但是优化起来还是很需要花一番功夫的
官方大大,1.10的性能提升是不是比1.9.2的提升很多呢?小游戏环境.现在项目急切需要解决这个问题.
没有,1.10 和 1.9 性能接近,2.0 才有大幅度的性能提升
我找到了,在next分支里面,幸好我机智
请问下,为什么我仅仅只是开启了enabledAccumulator,并没有修改FIXED_TIME_STEP,原本只是稍微有点卡的场景(物体移动稍微有点卡顿).在开启了enabledAccumulator的情况下,物体每秒移动的距离突然变大了,像是瞬移了一样
next分支 我还去工程里找了半天。。原来是git上
感兴趣,什么游戏,能看下吗。
在微信浏览器中,safari中,还有部分安卓机中测试,游戏流畅无比,PS:我是一名学生!在玩COCOS CRESTOR。
但是,当我发布到小程序的时候,就特别卡。具体表现就是,当屏幕中物理引擎驱动的物体到达3个,就会特别卡!
我做的也是一个小DEMO,就是射击游戏,屏幕中有几个来回跳动的球球,球中间有数字,看谁打分高的那种。
所以我想知道,微信中卡顿的原因是什么,这个和浏览器运行JS有什么区别?
在运用物理引擎的时候,如何进行优化!具体的操作是什么呢?www.pianoboy.club/game是我的DEMO的web地址!
如果用了物理引擎,可以通过修改游戏帧率和检测的步长降低检测频率,提高性能。
var pymanager = cc.director.getPhysicsManager();
// 开启物理步长的设置
pymanager.enabledAccumulator = true;
// 物理步长,默认 FIXED_TIME_STEP 是 1/60
pymanager.FIXED_TIME_STEP = 1/30;
// 每次更新物理系统处理速度的迭代次数,默认为 10
pymanager.VELOCITY_ITERATIONS = 8;
// 每次更新物理系统处理位置的迭代次数,默认为 10
pymanager.POSITION_ITERATIONS = 8;
非常感谢!
微信,tiledMap mark