2014-05-05 34 views
2

我几个星期前,转移到团结。我正在开发2D平台游戏。为了创建地图,我使用了www.mapeditor.org上的Tiled地图编辑器。我制作了一张基本地图。将tileSheet png和.tmx文件(保存为XML)包含在项目的资产中。我能够读取XML,这就是所有的gid。但我不知道如何访问tileSheet对应于gid的特定部分(tile)。需要使用瓷砖地图编辑器使用Unity 4.3.4

我认为这我需要在存储器中加载子画面并选择一个区块(通过指定高度和宽度和coords)使用从纹理存储器以将其显示在屏幕上。这里给出:http://gamedevelopment.tutsplus.com/tutorials/parsing-and-rendering-tiled-tmx-format-maps-in-your-own-game-engine--gamedev-3104 但它的闪存,我怎么可以在Unity中使用C#实现同样的事情。注意flash代码中的copyPixel东西。我以为我可以使用ReadPixels,但它仅用于从屏幕上读取纹理内存。

谢谢。

+0

最后我买了2Dtoolkit,它提供了自己的创建等级的方式,实际上你可以在统一场景中绘制关卡或者允许读取.tmx文件,它的价值与其他许多好东西一样 – Eklavyaa

回答

2

如果你能够更加细致地描述你的问题,你正在尝试做的,也许自己或别人可以帮你更好的,例如你到底通过“加载精灵到内存”是什么意思?或“选择一个瓷砖”?复制像素数据是SLOWWW,希望你不是要实时做这件事。

这是我的真实意见,但:

您检查了UTiled?它在Unity中以2D平铺地图,所以我认为它已经做到了你想要的,而且是免费的。 还有UniTMX ...免费。 也有'瓷砖地图'...这就像2美元。 我也建立了一个系统,也可以做我认为你正在尝试做的事情(你的链接被破坏了,所以我不能确定)。
我建立该系统被称为“Tiled to Unity”(你可以搜索它在YouTube上,看它是否你想要做什么)。它允许你将gameObjects附加到瓷砖上,并具有瓷砖变体,并可以做3D瓷砖。 无论如何,试图从滚瓷砖自己的管道到Unity是一个大量的工作,并与这些工具可用,我认为这是几乎可以肯定是不必要的......这只是海事组织。

+0

我检查了平铺TileMaps,但它不支持对象层。我正在探索UniTMX,它也有一个小例子,看起来不错。你对UTiled或UniTmx有什么建议?顺便说一句,在搜索时我遇到了Tiled To Unity。 :) – Eklavyaa

+0

嗯,我没有使用过我自己,因为我可以告诉他们不会为我剪下它(这就是为什么我创建了'拼贴到Unity')。顺便说一句,拼贴到Unity是专为您放置对象与高度可控随机化。我知道这需要花钱,我相信这是你决定的一个因素,但只是让你知道。 – Jorge

6

如果你在Windows工作那么Tiled2Unity Utility听起来像它会满足您的需求。它导出对象层,并且考虑到Unity 4.3功能。

(全面披露:我Tiled2Unity的作者)

编辑:Tiled2Unity适用于Mac用户以及现在。 Linux用户有一个命令行版本。 (全部免费)