首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

光线追踪技术的理论和实践(面向对象)4

光线追踪技术的理论和实践(面向对象)4

Fig4 光线追踪渲染的场景2


最后我们也可以让地面反射物体,然后再墙上添加很多小球,让画面变得复杂一些,如下图。

Fig5 光线追踪渲染的场景3


总结
这篇文章通过利用面向对象的方法来实现了光线追踪渲染场景。利用面向对象的方法来实现光线追踪使程序的扩展性得到增强,渲染复杂的场景或者复杂的几何物体的时候,或者有很多光源和复杂光照计算的时候,只需要从基类继承,然后利用多态性来实现不同物体的不同渲染方法。
从上面的类图可以看到,利用面向对象的方式可以很容易扩展程序。而且,由于光线追踪的这种结构,不论添加多少物体在场景中,不论物体多么复杂,这种结构总能很好地渲染出正确的画面。

但是,对光线追踪来说,越复杂的场景需要的渲染时间越长。有的时候渲染一帧的画面甚至需要几天的时间。所以好的算法和程序结构对于光线追踪来说是很重要的,可以通过场景管理、使用GPU或CUDA等等技术来提高渲染效率。
返回列表