工作在2d自上而下的贴图游戏-我一直在寻找生成地图坐标(x/y),玩家可以使用它来导航(“无限”,perlin/其他生成的地形)地图,并解决噪音产生的问题。
我看到了解决方案,并被告知将世界和弦翻译为屏幕和弦,反之亦然--但我不知道如何正确定义固定的地图坐标,因为屏幕上的绘制是用相对于框架/窗格的坐标来完成的……所以0,0总是窗口的左上角,不管地图在哪里。
我可以很容易地计算地图的坐标(在字符的位置和地图中心之间有a瓷砖列和b瓷砖行),但是,我不知道如何定义一个固定的地图起始位置?一旦我启用了一个保存功能,玩家可能会在不同的位置开始游戏,所以它不能建立在这个基础上。
发布于 2013-05-30 16:20:01
当这样做的时候,所有的坐标都应该在“世界坐标”中。所以你的玩家位置是在无限地图上,而不是他在屏幕上的位置。
要呈现所有内容,您需要一个方法,它获取世界坐标并将它们转换为屏幕坐标,反之亦然。
要开始呈现,使用屏幕坐标0,0 ->转换到世界坐标,以获得在左上角呈现的瓷砖。和点击一样:获取鼠标坐标,转换,然后查看世界地图那里有什么。
当移动播放器,更新它的世界坐标,等等。
https://stackoverflow.com/questions/16840949
复制相似问题