问题标签 [jstilemap]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
524 浏览

swift - JSTileMap 在 swift 中的使用

我正在尝试将保存的 tilemap 添加到我的 swift 项目中,但不幸的是它不适合我。到目前为止,我已经做了这些事情:

到目前为止我有这个代码:

我检查了我的文件名,是的,tilemap.tmx没有错字。我可以运行我的项目,但什么也没有出现。我在控制台中收到此消息:

我将不胜感激任何帮助

0 投票
1 回答
977 浏览

ios - SpriteKit 在运行带有大型瓷砖地图 (JSTileMap) 的游戏时使用 95-100% CPU

我的项目在 iPhone 6 上以 55-60FPS 的速度运行,但任何较旧的东西都完全无法播放,因为有些东西正在消耗 CPU。

我认为这个问题与我的地图上的瓦片和图层的数量有关(64x256 有 4 层),仪器显示“SKCRenderer:preprocessSpriteImp(...”需要 5198 毫秒 (23.2%) 的运行时间。

JSTileMap 是否一次加载每个图块的图像(可见或不可见)?RW 的这篇文章表明情况确实如此,并且可以解决它以大幅提高性能: http ://www.raywenderlich.com/forums/viewtopic.php?f=29&t=9479

在另一个性能说明中 - Sprite Kit 检查它的所有节点并决定它需要哪些节点来显示每一帧。如果你有一个大的瓦片地图,这可能会对性能造成很大的影响。JSTileMap 在加载瓦片地图时会加载所有节点(每个瓦片的 SKSpriteNode)。因此,我的地图(500 x 40 瓦片)在 Sprite Kit 版本中也出现了性能问题。我在我的 JSTileMap 版本中添加了一个检查,该检查包含在工具包中,标记每个图块的隐藏属性,然后智能地取消隐藏并仅隐藏进入/退出屏幕空间的图块。这显着提高了这些较大地图上的性能。

不幸的是,该帖子没有详细说明为解决此问题而采取的步骤。

我的第一个想法是(我是初学者,请温柔一点)通过循环遍历每个点并检查特定图层上的图块来创建节点数组。从那里我将根据与玩家的距离来添加/删除它们。

这不起作用,因为将节点添加到数组的过程只会导致应用程序在更大的地图上永远挂起。

有人可以帮忙吗?我很想使用更大/更复杂的瓷砖地图,但这个性能问题正在摧毁我的大脑。

谢谢阅读!

更新:非常感谢 SKAToolKit: https ://github.com/SpriteKitAlliance/SKAToolKit

他们的剔除功能解决了我的问题,我现在以不到 35% 的 CPU 运行更大的地图。

0 投票
1 回答
344 浏览

swift - 在Sprite Kit中使用TileMap的物体位置

在 TileMap 中,我们可以使用图层,其中之一是对象图层。但如何利用他们给我他的位置?

使用此代码,我可以看到对象的位置,但它没有“名为位置的成员”

代码的结果

所以我不能将位置保存在 Var 或 Let 中,我们怎么能?

0 投票
1 回答
491 浏览

json - 如何将 tilemap(从 tiled)合并到移相器中

我基本上是在尝试使用 Phaser 创建一个平台游戏。我在 Tiled 中创建了一个 JSON 文件,现在正尝试将它添加到世界中。实际上,过去三个小时我一直在尝试添加它,但没有成功。我看了很多帖子和教程,但没有任何效果。希望有人可以提供帮助?

这是我的html:

还有我的 Game.js:

这是我的“LvlOneMap.json”文件:

我还应该注意,图层的名称与 Tiled 中的名称匹配,并且 Tile Layer Format 设置为 CSV。

0 投票
1 回答
70 浏览

sprite-kit - 使用 JSTileMap 在 SpriteKit 中加载 TMX 文件后节点数很高

我正在尝试加载使用 Tiled 创建的平铺大小为 H:32px W:32px 的 32x22 地图。在遵循此处的答案和有关如何在 SpriteKit 中使用 JSTileMap 加载 .tmx 文件的教程之后,我尝试了自己的:

地图加载成功。我现在的问题是右下角显示的节点数量超过 700。它似乎相当高,或者有这样的数字加载基于 tmx 的地图是否正常?

0 投票
2 回答
56 浏览

ios - JSTileMap 上的 EXC_BAD_ACCESS

我正在尝试tmx在我的场景中添加一个文件,但我得到了

EXC_BAD_ACCESS

请帮我

![我的项目结构是这样的

在此处输入图像描述 在此处输入图像描述

0 投票
1 回答
159 浏览

ios - JSTileMap(.tmx) 与 Xcode SKTileMapNode

有人能告诉我们哪个是更好的选择并列出一些优点/缺点吗?

对于游戏-> .tmx?

出于其他原因-> SKTileMapNode?

0 投票
1 回答
110 浏览

ios - 如何将physicsBody添加到JSTileMap生成的瓦片中,并将它们变成一个physicsBody

我使用 JSTileMap 来绘制一个关卡。我对其进行了一些更改,将 SKPhysicsBody 添加到每个图块中,但有时当我对主角施加一些冲动并且他撞到墙壁/地面/天花板时,他的行为很奇怪。他以与物理原理相反的方式从表面反射。我认为这是因为玩家击中了两个物理体(例如地面的两个物理体)连接的点。SKPhysicsBody 类提供了一种从不同物理体创建一个物理体的方法 + (SKPhysicsBody *)bodyWithBodies:(NSArray *)bodies; 我可以使用这种方法从瓷砖物理体中创建一个物理体吗?

这是来自 JSTileMap 的一个方法,我在其中添加了物理体:

在将物理体添加到每个图块并将这些物理体添加到 NSMutableArray 之后,我将此 NSMutableArray 的副本分配给 NSArray 并尝试从中创建一个物理体,如下所示:

结果,添加了一个具有一瓦片高度和宽度的物理体。

0 投票
1 回答
534 浏览

java - 如何在 libgdx 游戏中像泡泡射击游戏一样生泡泡

我想做泡泡射击游戏。但问题是我如何在 libgdx 中绘制具有不同颜色的气泡 10 行和 10 列的气泡……这个气泡是通过 tilemap 还是任何其他方式绘制的。

0 投票
1 回答
70 浏览

javascript - 使用光标在瓷砖地图中多选瓷砖

我正在使用 tilemap 和 Phaser 框架开发游戏。我想使用移相器(光标)在 tilemap 上选择多个坐标,然后可以存储到数组中。这可以使用移相器吗?建议我为此提供一些解决方案。