我正在用javascript做一个游戏,使用Phaser,它有一个11800 x 11800像素的地图。这大约是394.5 mb。这太大了,不能用8 is的内存渲染,所以我把它分成了100个部分(1180x1180每个是一个10x10的网格)。
相位器是否渲染屏幕外的图像,或者我是否应该编写代码仅在相机范围内渲染,如果不是,则image.kill();。或者,有没有更好的方法来处理这个问题?
谢谢。
发布于 2017-05-26 15:51:18
发布于 2017-06-28 22:26:27
Phaser在渲染对象之前不会自动检查对象的可见性,这是您必须自己处理的事情。
在Phaser.Component中有一个名为inCamera的函数,它允许您检查游戏对象是否在相机边界内。
http://phaser.io/docs/2.6.2/Phaser.Component.InCamera.html
如果您经常检查每个游戏对象,那么在每个游戏对象上运行此命令可能会导致性能问题,因此根据游戏的逻辑,我会尽量将检查次数保持在尽可能低的水平。
https://stackoverflow.com/questions/44158911
复制相似问题