2
我对这一切都很陌生,但我试图让自己成为一个简单的2D游戏。 我决定做一种迷宫类型的游戏,我正在为此做的是绘制迷宫作为纹理,然后有另一个纹理作为我的角色在这迷宫中移动。简单的二维碰撞检测C++
但是,我非常努力的碰撞检测,使我的角色不只是穿墙而过。我被告知我可以使用glReadPixels来查找背景的颜色,但是每当我尝试这个时,它都会忽略颜色并继续穿过墙壁。
任何人都可以请帮助我,告诉我如何做到这一点,因为我找不到任何有用的东西。 在此先感谢。
他们只是垂直和水平壁但它都在一个大质地上。我将如何去创建数组/矩阵并更新它?我对此很不好,我很抱歉。 – user1324894 2012-04-10 19:31:57
我会将大的纹理分解成小的统一大小的瓷砖(例如墙壁,通道,门等),然后根据迷宫矩阵中的值动态地将其分配到屏幕上(例如,矩阵中的值0代表路径可行走,1代表挡墙)。然后,您可以对矩阵进行所有计算,并将迷宫的状态呈现在屏幕上 - 优点是它比一个大质地更灵活。 YOu可以重复使用相同的磁贴,(节省磁盘空间);动态地改变迷宫(例如,关门与开门);等等。 – Attila 2012-04-10 19:39:52
啊我想我已经开始明白你来自哪里,所以它会是一个更小的纹理的正方形阵列,这些纹理都可以放在一起来制作地图?因为我现在正在做的是将其作为一个纹理绘制,并将角色移动到一个方向上,同时将地图朝相反的方向移动以便能够在其周围移动。如果我将它改为瓦片阵列,情况仍然如此吗? – user1324894 2012-04-10 19:51:02