【问题标题】:Canvas/Stage Size in Flash is too small and cannot show entire levelFlash 中的画布/舞台尺寸太小,无法显示整个关卡
【发布时间】:2013-03-22 02:28:24
【问题描述】:

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

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

【问题讨论】:

  • 你有什么版本的Flash?至少在 CS5.5 中,当我拉伸一个非常大的形状时,画布区域似乎会扩大。理想情况下,您会按照其他人的建议降低关卡,但您可以尝试将关卡 MovieClip 的缩小版本放在舞台上,然后双击它以“就地编辑”。

标签: java actionscript-3 flash


【解决方案1】:

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

【讨论】:

    【解决方案2】:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-06
      • 2013-12-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-19
      相关资源
      最近更新 更多