Articles of 地图

我的瓷砖应该有多大瓷砖地图?

我正在创建我的第一个地图。 教程通常是32×32像素( 示例 ),但本教程的确是128×128像素,这使我更容易看到,而不是放大。 在平铺中,我做了一个128 x 128像素的40 x 40的地图,地图是5120 x 5120像素的大,与32 x 32像素相同的40 x 40的地图给了我1280 x 1280像素的分辨率。 我正在制作一个典型的HTML 5(带canvas),JS,CSS3和melonJS引擎的网页游戏。 如果我制作32 x 32像素的拼贴块和128 x 128像素的块,这有什么关系吗? 会影响性能吗?

平铺贴图呈现错误

我正在使用我正在应用于形状的边框瓷砖在Tiled中呈现问题。 在平铺: 在游戏中: 我正在使用平铺翻转来减less工作。 我认为这可能是问题,所以我自己testing了几个瓷砖: 瓷砖: 在游戏中:他们按预期渲染 这可能是什么原因? 我的游戏引擎是Melon JS

一个大的瓷砖或多个瓷砖

我目前正在为一个业余爱好项目编写一个二维平铺卷轴,我找不到任何资源来给我一个明确的答案,哪个更有效。 每个块包含44×24×32px×32px的图块,我正在将所有直接相邻的块渲染到屏幕外。 每块我指定瓷砖的types,如沙,草,路面等。我的最终目标是在每个集合中有几十个独特的瓷砖,可能有几个“草”集拉,有不同的景观。 我想做的事: 我只想加载出现在加载块中的图块。 我会通过在Tiled中标记贴图“家族”来做到这一点,以及给他们一个专门针对该贴图集的ID。 不过,我不知道在游戏开始时加载一个大的tileset中的所有tile是否更好,只是把它保存在内存中,而不是频繁的内容加载 当游戏第一次启动时,游戏是否可能更有效地运行,根据需要dynamic加载tileset,或者是一个非常大的tileset?

如何处理细胞分裂的多人世界的边缘情况?

为了克服大世界video游戏中的浮点精度,我所读到的最常见的做法是将世界分成单元格,并将其加载到玩家的位置和对象的相对于玩家的位置上。 不过这似乎只适用于单人游戏 。 只要您更改为具有权威服务器场景的多人游戏,就会出现很多exception情况。 由于一个权威的服务器必须跟踪所有的世界,所以不可能根据单个玩家的来源 对于两个或两个以上细胞坐标系中途的物体。 哪个单元的部分应该是? 它应该如何应对呢? 似乎没有什么信息可以支持这样的多人游戏世界,而这些游戏世界大于普通起源足够精确的支持。 任何人都可以谈谈这个话题?

什么是3D顶级地图的一个很好的格式?

我正在构建一个像GTA2一样的3D顶级游戏。 在这场比赛中,地面大部分是一层(隧道和高速公路除外)。 大部分的地面也是城市,所以地面通常由道路或建筑物覆盖。 建筑物是玩家可以四处走动的简单的3D模型。 大部分的游戏是2D。 我应该如何模拟地图? 我已经考虑了以下选项: 位图,我认为这给我的问题,当我想添加比瓦小的数据。 而且桥梁和隧道的问题似乎也难以解决。 多边形,定义所有的道路,地形types,多边形的建筑物,并保存与物理和纹理信息。 你会采取什么方法,或者你有没有实施这个方法或知道实施?

平铺过渡 – 外部与内部

我一直在看几场比赛,并注意到瓦片之间的转换处理有所不同。 我想知道哪些方法将用于不同的情况,为什么。 我目前在自上而下的游戏中使用内部边缘,目前正在运行。 但是我不想在以后遇到问题,不得不重做整个瓷砖。 我注意到平台游戏大多使用内部边缘,而自上而下的游戏大多使用外部和混合转换。 我可以看到这些瓷砖如何被用来在自上而下的游戏中创造“深度”,例如玩家站在墙前。 但是这样一个小特征似乎不太可能决定整个瓦片转换的方法。 你总是可以改变边界框来创建相同的效果。

我怎样才能有效地存储工作记忆瓷砖地图?

我一直在研究不同的基于磁贴的项目,但从未真正困扰于高效的记忆方式。 每个瓷砖都是由一个瓷砖类,代表以下几点: 瓦片的X和Y ID 实体布尔值 实体离开或input瓦片时的事件 graphics数据 尺寸 但特别是现在,当使用一个基于组件的系统,其中一切都是一个实体(有一些基本function已经占用一些内存),我已经开始遇到内存问题。 我开始研究现有的瓦片引擎,并注意到它们中的很多甚至没有瓦片类,只是使用一个整数数组。 我想你可以使用arrays的位置索引和graphics的实际整数值。 但是,如何将这个瓷砖的其他数据存储? 例如事件,会从arrays外部保存他们? 这意味着你需要为每一个你想要保存的财产提供一个清单,这听起来像是一个痛苦的屁股。 知道他们如何在一个更有限的平台上处理这个问题可能是件好事,比如SNES?

如何生成一个2d的基于网格的地图而不用搞砸了?

我对游戏开发的机制比较陌生 – 追赶速度很快,但还是有一些东西能够逃脱我。 例如:在二维网格上生成完全可访问的地图。 请参阅http://crawl.sz.org上的示例。 每张楼层地图都以几十条曲折的迷宫般的通道开始,随机下降到兴趣点 – 寺庙,老板巢穴,集市等等。我知道这里有很多因素:生成至less有一个出口的通道(否墙上的孤立的隧道),确保通道至less有一个单元格宽度的墙壁和相邻的平行通道之间,以及连接到地牢的方式放置兴趣点。 我已经对它进行了一些尝试,而且很容易在代表段落的二维matrix中粗暴地放置线条 – 但是它们永远不能保证连接,并且不像上面例子中的地图那样优雅。 我想我的问题是,我需要知道什么重现在crawl.sz.org的例子? 我知道这是一个很大的问题 – 有人向我提供一个链接到一个参考网站,并告诉我在那里学习。 我只是在这个新的,我甚至不知道什么条件谷歌 – 也许有不同的代名称进程? 可用的技术是JS(jQuery)和PHP,所以为其中的一个定制解决scheme将是理想的。 谢谢!

二维岛发生器algorithm – 瓷砖成为土地的机会

我正在开发我的第一个岛发电机(在C#)。 我正在使用这个algorithm作为我的基本想法: http : //www.funstormgames.com/blog/2012/09/procedural-island-generation-for-ludum-dare-24/ 基本上,你以螺旋形状环绕瓷砖,根据机会增加土地 – 当前瓷砖接触的土地越多,瓷砖成为土地的机会就越多。 但是,我不知道如何处理这个机会,不管我说什么,我都不满意我的结果。 如果你还没有使用这种algorithm,你不能真正帮助我的数字,但一个新方法的推荐将是非常好的! 我正在使用函数来确定每个tile – 传递一个名为potentialChance的参数。 对于第一个“圆圈”或围绕起始岛,我提出了25个潜在的机会。 这个潜在的机会起初乘以当前我们可能变成土地的电网的地块的数量是感人的。 所以,如果一个网格有3个周围的土地瓦片,它的机会将是75%(我产生一个随机数达100和比较)。 我对我得到的太多岛屿并不满意,在testing的时候我正在改变潜在的机会。 所以不是把瓷砖的数量乘以潜在的机会,而是尝试了不同的方法。 我会有一个商数,即0.7,对于每个周围的地块,我将商乘以1.5,然后乘以那个数字与潜在的机会。 不过,我还不太满意。 我知道我的algorithm工作正常(我已经debugging,看到了结果),但我的数字不太好。 如果有人使用这个相同的对数,我很乐意看到方法和数字! 否则,你会建议在一个新的algorithm? 我是游戏开发新手,所以…

没有TileMap的2D侧滚动游戏

我想创建一个类似于游戏“Castle Crashers”风格的2D侧滚动游戏。 (请访问: http : //store.steampowered.com/app/204360/查看游戏的一些图片)。 我有创建2D游戏的经验,使用一系列的贴图(一个贴图)来查看玩家/敌人/子弹是否正在通过在相应位置的贴图引用实体x和y坐标来移动到一个被阻挡或未阻挡的图块。 我的问题是:如何在不使用拼贴的游戏中实现与“游戏地图”的碰撞,而是形状。 例如:如果当前的“地图”是一个圆圈,那么p [层可以在圆圈内部自由移动,但不能离开圆圈。 对不起,如果这个问题是啰嗦和混乱,但我真的很感谢一些帮助! 谢谢!