0

我正在尝试制作一个包含 3 个阶段的 OpenGL 游戏:欢迎、战斗和盔甲。每个阶段都有不同的逻辑和不同的纹理。

何时是加载这些纹理的最佳时间,所有这些都在开始时加载,或者加载每个阶段激活时使用的纹理。如果是这样,我应该在切换到另一个阶段时删除它们吗?

如果第二种方法最好,如何在每个阶段加载纹理时显示静态启动画面(图像)?

4

2 回答 2

1

好吧,加载纹理(尤其是从 sd 卡)可能需要一些时间。在需要它们之前加载它们的原因是避免在阶段之间出现加载屏幕。如果玩家经常在阶段之间切换,并且您的纹理不是那么大,您可能希望在启动时加载它们(给等待游戏加载一次的痛苦,即使它会更长)。您必须在可供您使用的记忆以及您想通过打断玩家的游戏体验来激怒玩家的程度之间做出平衡。

您还可以通过在阶段结束时显示记分牌来分散玩家的注意力,以向他展示他刚刚的表现,而不是加载栏。

如果你能预料到玩家什么时候会很快切换到另一个阶段,你可以尝试在背景中流式传输纹理,但这样做要复杂得多(嗯,尤其是在移动平台上),所以你需要为此做一些研究。

于 2012-05-15T21:05:22.470 回答
0

我认为只有在该阶段需要它们时才应该加载它们。如果玩家可能无法进入下一阶段,为什么还要在视频 RAM 上加载纹理来浪费内存?

您可以显示一个根据您的需要定制的对话框,并在您准备好时将其关闭。我现在没有任何样品。

于 2012-05-15T19:59:02.607 回答