18.高级光线传播与高级外观建模

一.高级光线传播

1、无偏的

①有偏VS无偏

  • 蒙特卡洛估计出的结果的期望永远是对的

eg:PT中不管有多少样本,期望都是定积分的值

  • 有偏的:估计出的结果的期望和积分的值不一样
    • 一个特殊情况(一致的):极限定义下,会收敛到正确值

②双向路径追踪(BDPT)

  • 优点:光线传播在光源半边好算时,效果好
  • 缺点:慢

③Metropolis光线传播(MLT)

  • 用马尔科夫链的方法采样
  • 局部(local)做法
  • 优点:适合做复杂的光路(用一条光路作为种子)
  • 缺点
    • 不知道收敛的速度(无法预估渲染时间)
    • 局部→ 看起来脏

2、有偏的

①光子映射(Photon Mapping)

  • 非常擅长处理高光漫反射(SDS)路径并产生焦散
  • 两步做法
    举例一种:


    Stage1:从光源触发,知道打到diffuse表面,停在那里
    Stage:从camera开始,也打到diffuse停下,
    //Stage1&2合起来:局部密度估计,对于任意一个着色点,取n个最近的光子,计算占据的面积,然后计算光子密度
  • 细说光子映射

②VCM (Vertex Connection and Merging)

结合了光子映射和双向路径追踪

3、Instant Radiosity实时辐射度算法

  • 已经照亮的面都认为是光源,再照亮其他地方
  • 优点:快,能处理分散的场景
  • 缺点:不能做gloosy的物体

二.高级外观建模

1.非表面

①Participating media (如,云、雾):散射介质

  • 用Phase 函数定义光线如何折射
  • 如何渲染?

②Hair/fur/fiber(BCSDF)

·头发有色和无色的高光是怎么来的?

·以上效果不对→ 因为光线能穿过头发 →

·Marschner Model

·动物毛发(fur):引入骨髓质

③Granular material(颗粒材质)

.表面

①Translucent material (BSSRDF)半透明材质:

与传统的半透明材质有些不同,光线进入物体之后又发生了多次散射之后从另一个地方发射出去,这种散射方式叫做次表面散射,这个BSSRDF相比于BRDF中间的SS就是次表面散射

  • 如,玉石、水母

光线打到次表面散射的材质表面,就好像物体的底下有一个光源,为了物理上的真实,对应的上方也应该有一个光源。

BRDF与BSSRDF对比:

Cloth布料

  • 原理:不同纤维缠绕而来(fiber → Ply → Yarn )

  • 具体做法:
    • 当做表面(图1)
    • 当做Participating Media(图2)
    • 当成真正的纤维(图3)

③Detailed material (non-statistical BRDF)复杂/细节的材质

·对微表面模型的BRDF进行完善(加上现实中有的statistical normals)
    • D(h)项,正态分布和现实并不一样(图2)
    • 解决方法:一个pixel对应一个微表面(图3)

·不同的法线贴图有不同效果

  • 到此为止了? → No → 光的波动性(太难了)

3.程序化生成材质

  • 可以不用texture定义细节 → Noise function(定义在空间上的)
  • 给定任意空间中xyz,会返回一个值,可以用来生成地形,水面等等

  • 程序化生成:用一定的方式指导材质的生成,而不需要真正的生成,可以动态的查询他。
  • Houdini是先程序化生成,再拿来用。这个不用生成,直接去查询
  • 23
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值