javascript - Cocos2djs 中的 FPS 下降
问题描述
我的目标是用一个主要的大厅场景和其他通过 window.open 打开的 GameScene 来创建这种游戏模式。
但是,即使我尝试使用空的 hello world 项目来打开多个窗口,由于 FPS 的高下降,我也会受到限制。
所以基本上我需要知道这个设置是否可以在 cocos creator 中实现,甚至可以同时渲染四个窗口而不会影响 FPS。如果有任何指导方针可以帮助实现这一目标,我们将不胜感激。
我认为参考图片中的游戏是通过 angular 制作的,也许这就是为什么即使在十个窗口之后它也如此流畅的原因。
我的团队在 cocos2djs 上发布了问题,但没有帮助:- https://discuss.cocos2d-x.org/t/help-regarding-multi-window-game-in-cocos-creator/42688
解决方案
经过一番深入研究并根据您在评论中的回答,我认为您可以尝试一种不同的方法“分屏游戏”。我相信当一个新窗口打开时,它会使用相同的资产并且会降低 FPS。
我不知道“分屏游戏”的最佳做法是什么,但我对如何实现它有一个建议:
- 创建主屏幕的预制模板。
- 为每个屏幕创建不同的层(节点)
将预制件添加到图层中,例如:
layer with 1 screen - 1 prefab layer with 2 screen - 2 prefabs (duplicate prefab) etc.
如果您在屏幕(层)之间移动,请不要忘记将最后一个节点设置为 false 并销毁他的所有子节点。
另外,我认为即使是一个窗口应用程序,您的 drop 也有点高,请尝试检查一下。
我希望我对你有所帮助。
推荐阅读
- c# - C# CustomButton 不起作用 CancelButton 和 AcceptButton
- python - 如何在 Python 中将一组字符串拆分为子字符串,使较短的子字符串更有可能?
- wordpress - 从 wordpress 导出原始媒体文件
- jmeter - 比较运行脚本的时间
- emacs - 某些基本功能在 org 模式下的 table.el 中不起作用?
- powershell - 如何显示 Powershell 脚本中的错误代码?
- postgresql - 如何备份模式的特定表并在其他模式上恢复
- linux - 在 Shell 中找不到命令以及正确的退出状态。如何解决这个问题?
- r - 使用 pickerInput() 过滤数据并根据 R 中的过滤数据进行绘图
- c++ - 查找循环双链表长度的算法