AS3用不同的瓦片铺磁砖的背景

时间:2013-07-04 05:14:51

标签: image actionscript-3 flash background

我正在试图找出制作平铺背景的正确方法。我看过很多其他人在谈论这个问题,但对我而言,我所看到的所有内容都在谈论只是重复背景。

我希望能够有不同的图像/图块来制作我的背景。

此图片: http://ft.trillian.im/e246659bd210e2ec6d17acc076468f23fbc820d5/6hIXP37GTFJEfNukDmBkCFN6yh3lx.jpg 显示我在想什么。 1& 2是相同的牌,如3& 4和5,6,7是相同的。

我很新,我不确定我是否需要像其他问题或精灵或电影剪辑或其他内容那样做位图。

我所知道的是我需要动态创建并且只在后台。如果用户点击它,它将无法识别它被点击它。 (换句话说,它会认为用户正在触摸舞台。)我还需要能够在背景之上与影片剪辑进行交互。 我也可能想要在原始背景上叠加其他背景图像。我不确定,也许我会为这种类型的东西制作新的瓷砖。

这是错误的做法吗?将整个背景画成一个大图像是否更实际?

我认为这样做的部分原因是,我可以使当前正在舞台上显示的背景的其他部分不可见,以节省处理。或者这样的效果可能会完全删除它,然后重新添加它,如果它进入视图。

如何以这种方式将图像添加到舞台上的任何特定代码都会非常有用。

感谢。

1 个答案:

答案 0 :(得分:0)

你所追求的是一个平铺引擎。如果您愿意,可以从头开始编写一个简单的实现。基本组件是一个瓦片地图,一个精灵集合和一个引擎,将它们放在一起。

您的图块地图将是精灵ID的二维数组。

var tilemap:Array = [[1, 1, 1, 2, 2, 1, 1, 1], [1, 1, 1, 2, 2, 1, 1, 1], [1, 1, 1, 2, 2, 1, 1, 1]]

每个数字对应一个引用文件名或符号链接ID的精灵ID。

引擎解析tilemap,通过并排放置sprite来获取sprite并组成更大的背景位图。

http://gamedev.tutsplus.com/tutorials/implementation/parsing-tiled-tmx-format-maps-in-your-own-game-engine/提供了有关此做法的精彩教程。