2011-02-05 81 views
3

假设我们正在Web浏览器中制作策略游戏(思考文明)。游戏有一个可见的地图部分 - 比如30x30的方格。每个正方形都是30x30px,并且有几个叠加的图像 - 地形,资源,单位,道路等。绘制这种图像的经典方法是使用巨大的<table>,其中每个单元格将包含绝对定位的图像。它可能会呈现在Javascript中以减少流量。但它仍然有数千张图片和一张巨大的桌子。游戏地图网格如何纳入网络浏览器?

浏览器能否接受它?性能是否会降低到可接受的限度以下?另外,我可以保留一个预渲染的地图图像,尽可能多的覆盖图,但我认为这会更有效。

回答

1

您应该仔细研究一下canvas element,它不需要浏览器来存储和计算整个布局和其他DOM内容。

这就是说,高性能工作站上的现代浏览器可以同时显示数百幅图像,如FishIETank所示。但是,许多设备 - 从智能手机到旧电脑 - 都不能。哦,并且使用表格可能比其中的图像要慢,而其中的position:relative;absoluteabsolute

+0

那么,我仍然需要一个网格本身来绘制,因此表格。虽然我想它可能是地形图像的一部分。或者,也许我可以在图片和背景之间有1px的空间。嗯,是的,我认为这样会很好,并减轻负载。至于移动设备 - 界面非常丰富,移动设备无法运行它。因此,他们甚至不在预期的目标受众中。 – 2011-02-05 16:59:19

1

看看像grepolis这样的在线游戏,他们已经在做一些像游戏这样的网格,现代浏览器可以轻松实现。