漫步奥格瑞玛 Portal Scene Manager

     我2007年12月04日做的一点东西

     一直对魔兽世界的室内场景管理很感兴趣。花了两周的时间研究了一下WOW中相关的格式,写了一个Portal实现的场景管理。

     目前测试过的场景有奥格瑞玛,暴风城,兽族营地,兽族大厅。在各个场景中,能够做到场景模型各个三角形的精确碰撞。为了减少碰撞的遍历运算,碰撞利用了WOW文件中的Bsp数据。

     基于Portal的场景剔除和Add使用的是WMO中的Portal数据。目前的场景管理还有些bug,有些地方会出现不合理的剔除以及一些莫名其妙的情况,只能算是基本跑起来。

   除去场景管理,我对于场景单元三角形Buffer绘制经过了三次优化,奇妙的是,每个版本都能运行的很正常,不同的只有送入显卡的顶点是否冗余和FPS的递增。我想知道,到底是我很聪明,还是暴雪的WMO数据格式做的很聪明。

    关于魔兽的格式,来自互联网资源。但是各种数据不全,很多数据的意义都是靠自己反复揣测。程序基于自己的3D Engine。

   这里的所有WOW资源只用于学习。

给出几张截图:
奥格瑞玛入口

奥格瑞玛城中

暴风城中

posted on 2009-08-10 11:38  朝三暮四郎  阅读(1862)  评论(5编辑  收藏  举报

导航