首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未能使用SpriteKit和JSTileMap查看TMX

未能使用SpriteKit和JSTileMap查看TMX
EN

Stack Overflow用户
提问于 2014-02-04 15:33:16
回答 1查看 779关注 0票数 4

我正在尝试使用SpriteKitJSTileMap来可视化一个大地图。地图的大小是3398 x 4842

我定义了一个TMX地图,在一层中使用大小为1699x2421的4个瓷砖,每个瓷砖匹配一个tileset。

这是tmx:

代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<map version="1.0" orientation="orthogonal" width="2" height="2" tilewidth="1699" tileheight="2421">
 <tileset firstgid="1" name="BL" tilewidth="1699" tileheight="2421">
  <image source="new_york_map_bl@2x.jpg" width="1699" height="2421"/>
 </tileset>
 <tileset firstgid="2" name="BR" tilewidth="1699" tileheight="2421">
  <image source="new_york_map_br@2x.jpg" width="1699" height="2421"/>
 </tileset>
 <tileset firstgid="3" name="TL" tilewidth="1699" tileheight="2421">
  <image source="new_york_map_tl@2x.jpg" width="1699" height="2421"/>
 </tileset>
 <tileset firstgid="4" name="TR" tilewidth="1699" tileheight="2421">
  <image source="new_york_map_tr@2x.jpg" width="1699" height="2421"/>
 </tileset>
 <layer name="Main Layer" width="2" height="2">
  <data encoding="base64" compression="zlib">
   eJxjZmBgYAFiRiBmAmIAAIAACw==
  </data>
 </layer>
</map>

虽然我能够使用Tiled软件看到TMX映射,但我无法用SpriteKitJSTileMap可视化xode中的映射。加载部分的处理似乎是正确的,但我看不到任何东西:我有一个带有标签:0节点/0绘图的黑色屏幕。有没有任何可能的线索,什么可以阻止我的地图正确可视化?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-07 07:28:03

问题是图像上的@2x。这向SpriteKit表示,您的图像是按点工作的,而不是像素,并以此方式加载图像。TMX地图格式以像素为单位,而不是以点为单位,这就抛出了预期的数学。您可以通过在setSourceImage:方法中放置一个断点并查看_imageSize变量来验证这一点--当使用@2x后缀时,它被切成了一半。

从图像中删除@2x (无论是在Xcode项目中还是在TMX映射XML中),您应该会做得很好。

注意,一旦进行了这些更改,我就必须进行清理,以查看它们在iPhone模拟器中的反映。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21556625

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档