基于四叉树的分块地形LOD,VC 源代码,环境:windows,vc6.0,mfc,opengl。
以下为引用作者空间的话:
这个程序做了很长时间,一方面是由于调试起来有点麻烦,一方面是由于中间老被毕业设计打断,等重新切回来时就想不起来了。我是想做一个《重组3d》的新版本,打算让细菌不仅局限于水中,同时也能登陆,而且活动空间足够大。这就导致必须首先解决地形问题,这次我决心实现得彻底些--把四叉树、LOD、地形分块这三部分都做出来。过程中遇一些细节问题搞得很辛苦,主要有下面几个:
(1),当用转化到屏幕空间做视截体碰撞检测时,有些点成的是虚像,需要校正。
(2),引入LOD后,不同分辨率的交接处出现裂缝,要填充裂缝,四叉树适宜四叉矩阵作为数据结构而不适宜用四叉链表(如果不修补裂缝的话,则二者都可以不用)。
(3),引入地形分块后,各块之间还会出现接缝,经过尝试,最后用的是边界条带来修补的。
1