前面提到了这本书,终于找到了电子版,不过是扫描加OCR过的,质量还不错了。特此提供为大家提供下载链接:-) 下载链接:这里(密码:twilightzone) download link: here(Password: twilightzone)
-
Pages
-
Tags
-
Recent Posts
-
Recent Comments
前面提到了这本书,终于找到了电子版,不过是扫描加OCR过的,质量还不错了。特此提供为大家提供下载链接:-) 下载链接:这里(密码:twilightzone) download link: here(Password: twilightzone)
体数据的绘制已经被研究了很多年,也包括很多方面,比如怎么渲染比较好看(我就想说说这个),怎么可以交互式渲染,怎么可以快速渲染大规模的体数据等等…… 从大的方面来说,体数据的渲染分为两类: 半透明体渲染(translucent) 等值面渲染(isosurface) 关于第2类渲染,简单说就是找到体数据中的等值面,然后把这些面绘制出来,用户可以移动这些等值面来查看体数据,就像是地图上面的等高线。进来[1]提出了一种绘制画线的绘制方法,不过也是基于等值面的哦。虽然等值面的方法不错,但是对于反映体数据内部的值还是不够直观,所以我比较喜欢使用半透明体渲染的方法。 半透明体渲染的方法比较多,大体分为4种 光线投掷(Ray Casting):这是一个阉割版的光线跟踪,去掉了很多光线跟踪复杂特性,参考[2]。不过这种方法对于渲染半透明体数据的的渲染效果比较好。 泼墨法(Splatting):这种方法就是你把体数据当作一团墨往屏幕上面扔,然后渲染结果就是所有的数据扔完以后屏幕的样子,很像画家的某种作画方法。 Shear-warp:我不知道这个怎么翻译,也不了解这种算法,很遗憾:-) 使用3维纹理:这是目前最通用的方法,也比较简单,因为现在的图形芯片都支持啊。 我目前比较倾向用3维纹理做,简单,效果也不差。具体来说就是绘制很多平面,不过要检测用户视角方向来放置这些平面,才能保证渲染结果没有瑕疵。 ——— [1]:http://www.cs.princeton.edu/gfx/pubs/Burns_2005_LDF/index.php [2]:http://en.wikipedia.org/wiki/Ray_casting