3D建模和3D渲染技术专题一: 热身篇,光线追踪(path Tracing),环境光阴影(ambient occlusion),焦距效果(effect focus)介绍
来源:互联网 发布:图片二维码识别软件 编辑:程序博客网 时间:2024/04/27 11:54
相比大家都看到过美国迪斯尼或者梦工厂制作的一些动画片,其中很多都是使用3D图像技术来实现的,也就是说根本不用使用摄像机就能拍出一部很好的动画片。现在想开个专题主要介绍一些3D建模和3D渲染。
我之前在国外学习的时候学过一门3D的课程,主要涉及到opengl和礼包QGLviewer的开发,当然涉及到了很多光学的知识,类似蒙特卡洛法,类似光线追踪法,阴影成像算法等,KDtree快速建立算法。觉得该课程实在是太有意思了,可以通过光学知识以及一系列的建模来塑造出我们虚拟的担忧接近现实情况的场景,并且模拟得十分如幻如真。
(再次还是感谢我的指导老师 tamy boubekeur, 以及和我一起工作完成的同学,Maxim, Tiago, Vinicius。 Merci a vous.)
此类专题会尽量保持定期更新,当然我也会投入一定的时间进行编辑和总结归纳,如何能够是自己阐述的尽量让大家都明白。
当然,第一个专题先附上一些我们渲染的场景效果图,能够更好吸引大家的兴趣和注意力:
第一张: 场景为多个并行排列的小球,采用了光线追踪方法(大概反弹3-5次),单光源照明,效果很好,很有阿凡达电影当中的效果,记住这个不是绘图出来的,是渲染出来的效果:
第二张图片: hard shadow 图片,顾名思义,硬阴影图: 直接计算像素点与光源之间有无障碍物,有则黑,无则亮。
第三张图片: ambien occlusion 阴影图,关键的难点在于阴影的实现,通常有direct illumination 和ambient occlusion方法,直接照射法很明显,计算像素点和光源之间是否有障碍物,如果有则为黑,如果没有则为白,这个效果太过黑白分明,没有过渡效果,显得不真实。这里采用的是ambient occlusion,利用像素点的垂直面发射平均分布的射线,计算射线被阻挡的总概率计算该点的阴影效果,这种方法很好的解决了阴影不真实的感觉,但是当然计算量随着射线的密集和发射的半径直接相关(计算量复杂度高于线性)。 可以看出当射线密度已经半球半径改变的话,阴影效果还是不同的
第四张图片: effect focus 图,我们知道一般的摄像头都有焦距,焦距内的图像清晰,焦距外的显得模糊。见图下:
图片中心附近显得清晰,图片四周则显得模糊:
第五张图片: 所有效果汇聚一生的效果图,本人十分酷爱汽车,相比大家也是,所以做一一张跑车的渲染图:如下,是不是很帅,快要流口水了。
好的,第一次就简单介绍到这里,之后会定期或者不定期的带来更为详细的专题。
- 3D建模和3D渲染技术专题一: 热身篇,光线追踪(path Tracing),环境光阴影(ambient occlusion),焦距效果(effect focus)介绍
- 3D建模和3D渲染技术专题二:windows下minGW,OPENGL开发环境的搭建和libQGLViewer的安装
- 下一代3d渲染技术,体素光线投射
- 问题七十一:环境光遮蔽(Ambient Occlusion)
- 3D未来争夺战 光线追踪算法浅析
- 介绍JSR184(3D)中的光线概念
- Ambient occlusion map (环境闭塞贴图)
- 5 个开源 3D 建模/渲染工具
- 5 个开源 3D 建模/渲染工具
- 服务器3D建模(一):PyOpenGL
- 3D effect for building footprints(建筑物3D效果)
- (一) 3D图形渲染管线
- 3D阴影效果css3按钮代码
- 3D背景图动画阴影效果
- 3D常识之光线
- untiy 3d ShaderLab_第8章_3_ 单光贴图和Forward 渲染路径
- 3D地形多层纹理混合加阴影渲染方法
- 3D地形多层纹理混合加阴影渲染方法
- 分布式系统之五:进程/线程
- 原来恐慌一场
- Curling 2.0
- c# 去除bom文件头
- Windows中的精度定时问题
- 3D建模和3D渲染技术专题一: 热身篇,光线追踪(path Tracing),环境光阴影(ambient occlusion),焦距效果(effect focus)介绍
- JavaScript图片裁剪
- 把一个单词增删改一个字符变为另外一个单词的最小操作次数
- java 递归生成目录
- hdu1505
- 三分搜索
- UIView 常用
- Objective-C研究之static关键字学习(六)
- hdu2602