植被系统

完成了基本的植被系统目前只有草层,支持全地图铺满草叶,存储容量小每一个草丛用8个字节表示,实际在内存中分配10*10的草块,存储根据地形高度法向量调整高度朝向后的草顶点,该顶点由后台线程生成每当摄像机移动到新的块,后台线程会生成该摄像机为中心周围10*10个块的所有草顶点数据(不用生成已经生成的块),主线程只要将内存顶点拷贝到相应的VBchunk就可以了。这样主线程只负责检查不再vb中的草块并将它从内存调入VB即可,所有顶点计算都在后台数据跟新线程完成,这样就最大化的减小了主线程在CPU的block时间,同时比较符合目前多核Cpu的趋势,目前算上加载线程,系统已经有3个线程,它们之间的交互都有专门的类来负责。拥有较好的强壮性,还有一些对于草渲染优化工作比如减小lockVbd的尺寸等等工作要完成。

原文地址:https://www.cnblogs.com/fishboy82/p/1453472.html