1

当我尝试在 CCTileMap CocosSharp 对象中加载 .tmx 文件时遇到问题。

这是代码:

                layer2 = new CCLayer();
                CCTileMap tileMap;
                tileMap = new CCTileMap("TestCCS.Droid.Assets/TileMaps/TestTile2.tmx");

                layer2.AddChild(tileMap);
                this.AddChild(layer2);

我试过了 :

                tileMap = new CCTileMap("TestCCS.Droid.Assets.TileMaps.TestTile2.tmx");

或者 :

                tileMap = new CCTileMap("Assets.TileMaps.TestTile2.tmx");

TestTile2.tmx 文件构建操作设置为“嵌入式资源”

这是我的解决方案资源管理器:

在此处输入图像描述

谢谢您的帮助。

4

1 回答 1

1

找到了一种加载 TileMap 文件的方法。

我找到的解决方案:

  • 将 TileMap 文件以 .xml 格式保存在 Tiled 软件中。
  • 以 .xml 格式保存 .tsx 文件。

  • 我使用此代码加载瓷砖地图文件:

                layer2 = new CCLayer();
                CCTileMap tileMap;
    
                CCTileMapInfo mi = new CCTileMapInfo("TestTile2.xml");
                tileMap = new CCTileMap(mi); 
    
                layer2.AddChild(tileMap);
                this.AddChild(layer2);
    

其中“TestTile2.xml”是一个 android 资产。

  • 每个层的瓦片都必须有一个 ID。我有没有“gid”的瓷砖,我必须将它们设置为透明的 gid。

希望这对其他人有帮助!

于 2018-02-07T16:44:39.720 回答