用OpenGL制作三维迷宫(一)
前面几日我重新实现了迷宫的自动生成方法,并且添加了迷宫自动寻路方法。有了一个独立于GUI的迷宫库,我开始迫不及待地实现三维迷宫了!
演示程序下载地址:这里
下面是迷宫的截图:
研制三维迷宫,需要攻破几个难点:
1、迷宫的生成。如果你是将迷宫数据硬编码或者从文件中读取,那么此步掠过,否则可以看看我写的文章:这里
2、纹理贴图知识。我使用的是游戏开发领域比较常用的tga文件格式。为此我写了一个读写tga文件的类,自己设定纹理贴图的方式。
3、摄像机系统。摄像机系统是第一人称游戏必须具备的功能。我自己也制作了一个基于OpenGL的摄像机系统的实现。
除此之外,在研究的过程中,还有一些需要突破的知识难关:
1、怎样将迷宫类的行和列映射到真实的三维坐标中?迷宫应该用哪个参考系来描述?
2、迷宫的“上、下、左、右”在三维中应该叫做什么?
3、三维点绘制顺序以及OpenGL裁剪模式造成的一些面不可见问题。
4、怎样设置阻挡?
5、绘制二维视图的问题。
在下一篇博客,我会简单地介绍我是怎么解决上面五个问题的。
下载了演示程序后,如有需要,可以更改Config.lua文件的内容,以获得不同的效果。下面是截图:
喜欢我的作品,一定要回复支持我啊。