0

这不是直接的编程问题,但我觉得它仍然属于该类别,如果这是错误的地方,我很抱歉。我正在使用 box2d 在 flash 中制作游戏,我决定在 flash 中绘制关卡,因为关卡设计看起来会更好,关卡非常大(这个关卡长 10,000 像素)并且 flash 中的画布不会显示任何内容.

平台游戏

库中的预览似乎能够比舞台上的绘图显示更长的时间。如何使画布更长?我是否应该尝试升级到更新版本的闪存,该版本是否允许这样做?

4

2 回答 2

0

不要使用巨大的位图——它们会占用大量内存,即使不是所有内容都可见,它们也会大大降低性能。因此,Flash 将大小限制为 4095x4095 像素(或矩形格式的等量像素)。

解决这个问题的方法是将图形平铺成相同大小的部分,最好小于舞台(1/2 或 1/3 边长是一个很好的衡量标准)。然后,您将它们全部作为网格放入更大的 Sprite 或 MovieClip 并设置visible=false;在每个图块上。然后,在运行时,您的游戏循环必须检查每一帧,哪些图块应该实际出现在舞台上 - 然后只有那些应该设置为visible=true;. 这样,您可以将绘制的像素数量减少到绝对必要的程度,并将屏幕内存使用量降至最低。

于 2013-03-22T07:59:06.813 回答
0

您只是不要立即将所有内容放在画布上,而是仅绘制那些现在可见的关卡图元或部分。或者,如果您的关卡基本上是一个非常简单的形状,您只需更改其 X 和 Y,以便在舞台上显示关卡的相关部分。

于 2013-03-22T04:01:30.540 回答