所以,我正在做一个有一些大纹理的项目,最近我决定按场景分割成不同的图集,这样当在场景中导航时,SpritKit 可以真正摆脱未使用的纹理
(由于我无法手动控制内存使用,我希望 SpriteKit 足够聪明,能够知道何时根本不使用纹理图集并在需要时释放它)。
现在,在进行此更改后,我去查看生成的图集,令我惊讶的是它们的大小不是 2 的幂,这是您在 Cocos2D 中学到的第一件事。(即 540x540 的纹理实际上最终会在 OpenGL 中成为 1024x1024,因此如果可能的话,使用 1024x512 甚至填充尽可能多的精灵而不浪费内存更有意义)
如果这在 SpriteKit 中相同,或者知道它实际上是如何工作的?也许不拆分地图集更有意义,因为我最终可能会使用与自动生成的糟糕地图集相同甚至更多的内存......