llk

QQ:506105747

我的3D引擎----树

    很久没有更新这个blog了,承蒙网友厚爱,还惦记着这里,感谢网友支持,我就继续在这里现丑吧。另且若再不说话,甚或被踢出这个群了,呵呵!

    一年来,由于工作的原因,这方面研究变得断断续续的,作了一些基础性的开发,但大多不很满意,最近一两个月做了个树木的程序,自己觉得还算看得下去,就贴出来了,别扔砖头哦。

    我简单的说一下思路,太高深的理论我也讲不好,恐误人子弟,就不在这里班门弄斧了,有好学的可到http://www.realtimerendering.com/ 那上面罗列的资料已经很全了。我这个是一个参数化的树木自动生成程序,和几何建模没有关系,大致的方法是用bezier曲面做叶片,曲线作枝条,先按灌木参数生成叶丛,billboard化后,再按乔木参数生成整棵树,使用先前的bb叶丛。当然最后整棵树也可以bb化。难点有两处,一个是参数化的生成程序,在CPU上处理,可根据植物的一些自然属性来写代码,这点各有各的理解,没有统一模式。另一个是动态光照的问题,在GPU上处理,传统的方式不行,在bb上实现动态光照确实很困难,只能做近似模拟,我使用了envelope,就是对整棵树进行扇形空间的划分。不是很准确,也还过得去。渲染上可以很容易的扩展,如叶片细节法线,reflect,树干relief mapedge extrude ...等等我都没做。我是越来越懒了,连基本的代码优化也省了,以致fps很惨。其实如果时间精力成本允许,是可以把效果做得很逼真的。

    好了,请原谅我的粗糙。以后有其他觉得满意的方面再给大家贴出来,路漫漫其修远兮,我也不知道还能走多远。呵呵!

posted on 2010-01-11 20:27  李林昆  阅读(2962)  评论(4编辑  收藏  举报

导航