Articles of 地图

创建一个城市顶视图

我想用java创建我的第一个游戏。 我需要一个城市的顶视图地图,我卡住了。 随机会发生在该城市的事件,玩家应该点击它。 现在是我的第一个问题如何在java中创建地图。 我devise了一个平铺的小地图,但不知道如何使用它: 我想在java游戏中使用这个。 我被困住了。 我想让事情发生在街头。 我该怎么做呢? 我正在寻找一些很好的教程,但我不知道我在找什么,所以我可以在这个方向上使用一些帮助。 对不起我的英语不好 :(

libGDX地图转换通过try&catch exeption

我有一个简单的问题。 首先是一些探索,但是: 我正在使用libGDX并制作一个塞尔达传说式的自上而下的游戏,而且我正在处理地图转换问题。 当我制作了地图并添加了(目前蹩脚的)碰撞检测function后,我注意到当角色离开地图(没有地图可以testing碰撞的可能性)时,IDE会抛出一个错误。 我想,很酷,我可以使用它。 我知道当玩家离开屏幕时程序会抛出一个exception,我发现了这个exception,并用它来决定玩家试图转换哪个地图,并据此切换。 我从scene2d动作和我们去的下一个地图上进行了一些转换。 但是,我不得不想,虽然捕捉这个exception是一件好事,我可能不应该依靠它来进行地图转换。 我敢打赌你们都会同意的:为了以防万一,不要依靠它。 所以,这意味着我需要在用户离开地图之前处理一个转换。 我尝试从碰撞检测中使用过渡贴图: 如果图块具有过渡属性,请确定用户尝试传输的位置,然后播放过渡效果并转到下一个地图。 这个系统唯一的问题是它看起来不正确。 用户转换就像在发生碰撞时一样,在瓦片中还有剩余空间横向。 那么我的问题就是:这两者之间有一个中间的地方吗? 有没有办法告诉结束地图或最后一个瓷砖,允许用户在过渡之前横切瓷砖? 或者,我的两种方法是唯一的吗?

即使在离屏的情况下,将物体保持在2D地图上的一个恒定点的最简单方法是什么?

就像在星际争霸中一样,即使你的视线在地图上移动,你的部队仍然保持在那里。 我有一个使用Mappy制作的静态平铺地图,我可以显示这个很好,我只是想让我的屏幕外物体保持放置状态,而我正在移动视图。 目前一切都是相对于我的看法而不是在全球(x,y)的位置绘制,我想改变这一点,但我不知道如何。 我需要另外一个arrays来创建我的地图吗? 这对我来说似乎是一个可怕的主意。

如何从3D瓷砖地图中删除接缝?

我正在使用我的OpenGL定制引擎来渲染一个用Tiled制作的地图,使用一个从网上传播良好的地图集。 没有什么奇特的事情发生。 我从Tiled加载TMX文件并生成顶点数组和索引数组来渲染tilemap。 我在3D世界中将这个贴图作为墙壁渲染,这意味着我在3D世界中用飞行相机移动,在Z = 0处有一架飞机向我展示我的瓷砖。 一切工作正常,但我得到丑陋似乎在瓷砖之间。 我尝试了正交和透视相机,并且发现了投影和视图matrix的特定参数集,其中的人造物没有显示出来,但是除此之外,它们在99%的时间内出现在多种图案中,取决于变焦和相机参数如视野。 下面是显示的工件的屏幕截图: http : //i.imgur.com/HNV1g4M.png下面是我正在使用的tileset(Tiled也使用并呈现正确): http : //i.imgur.com/SjjHK4q。 PNG 我的tileset没有mipmap,并设置为GL_NEAREST和GL_CLAMP_TO_EDGE值。 我在网上浏览过很多文章,没有任何帮助。 我尝试了uv校正,所以uv落在纹理的一半,而不是texel的末端,以防止用邻居值(这是透明度)进行插值。 我试着用我的几何graphics进行debugging,并且证实在每个图块中没有纹理和随机颜色,我似乎没有看到任何接缝。 所有的顶点都有整数坐标,即第一个贴图是从(0,0)到(1,1)的一个四边形,依此类推。 试图给紫外线和顶点添加一点偏移量,以查看间隙是否消失。 禁用多重采样。 到目前为止,没有任何修复 谢谢。

是否有可能使TileMap自行调整到多个屏幕?

我需要建立一个瓷砖地图,该地图应该适合几个屏幕尺寸。 但是,我使用的平铺地图编辑器只允许生成绝对固定尺寸的平铺地图。 有没有一个简单的方法来制作适应性的瓷砖地图,或者我应该为每个屏幕尺寸建立一个?

使用UICollectionView作为iOS游戏的平铺地图时是否有大小限制?

我正在为iOSdevise一个基于回合的战略游戏(例如图片Civilization 2),我正在考虑使用UICollectionView作为我的游戏地图。 每个单元格都是一个图块,我可以使用“didSelectCell”方法来处理玩家与每个图块的交互。 这里是我的问题:我知道UICollectionViewCell已经被操作系统取出并重用了,这是否意味着地图可以支持一个有效无限大的地图,只要一次只显示几个单元格? 然而,屏幕上的许多单元格将被保存在内存中,显然数据源将占用一些内存,但是,我的屏外映射将被限制到特定的大小,或者只要在任何一个时间可见的单元数量是不是太多的设备来处理? 基本上,是否有任何记忆体的权重离屏单元格,或只有可见的单元格有什么影响?

随机布局房间与相交的墙壁

我正试图在无限制的地图上布置几个矩形房间。 主要条件是每隔一个房间必须与至less一个墙的一个点相交。 数字,宽度和高度是由D&D骰子滚动产生的随机值。 隔壁的房间可以放置在任何放置的房间附近。 结果应该看起来像是一种地牢(希望图片更加清晰) 恐怕不同的打包algorithm对于这个问题来说太重了。 任何建议,我将不胜感激!

圆柱(2D)世界中的程序地形生成

我相当新的程序地形生成。 我知道,要生成地形,你将使用不同的计算与x和y轴(也z如果你有)。 但是如果你想在二维世界中产生随机地形,那会怎样呢? 我的意思是一个你离开左边(或者相反的方向)进入右边的世界。 它也应该立即生成,而不是一次全部生成。 我能想到的一个解决办法就是沿着边界产生海洋,但这不是我想要的。 我似乎还记得,文明产生了这样的世界,但我不太清楚这是怎么工作的,自从我玩这个游戏已经有相当长的一段时间了。 那么,究竟是如何产生这样一个连续的世界呢?

自上而下2D游戏:洞砖

我在Unity里做了一个自上而下的2D游戏,这里是我的疑问:我怎样才能给它添加“洞”牌,这样玩家就可以掉下来(像塞尔达:连接到过去,或者进入地下城)? 我认为的解决scheme是在每个瓷砖(地面,洞,陷阱等)上放置标签,将玩家放在Z = -5上,并使用3D Physics.Raycast检查玩家是在哪个瓷砖上。 但是,这似乎并没有优化,我需要在每个瓦片垃圾邮件发生碰撞,并在每一帧使用Raycast。 你们能给我更好的select吗? 非常感谢! 🙂

错误的UV计算

对于个人项目,我试图实现一个瓷砖地图。 我的目标是获得这个 但我得到的只是这个 我用这个公式计算着色器内部的UV坐标。 8和13是我的瓷砖的宽度和高度,在瓷砖中。 vs_uv = (1.0 / vec2(8, 13)) * (vec2(tile / 8, tile % 13) + vertex); 瓦片是这个数组的一个元素 GLint map[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, }; 和顶点是这个数组的行 GLfloat vertices[] = { […]