3D纹理映射(噪点,基于物理的渲染)

3D纹理映射(噪点,基于物理的渲染)

1.简介
•2D纹理颜色/扩散映射粘贴粘贴图片(纹理)到对象的表面上
•在3D对象的表面上粘贴2D纹理有多种方法
•3D纹理映射将对象放置在3D模式中
•3D模式不表示为2D纹理的数组: 这将是记忆效率低下的; 许多价值将保持未使用
•相反,该模式通常表示为过程…

2.3D纹理映射(“固体纹理”)
•对于3D纹理映射,纹理纹理所需的所有点是3D坐标
•评估每个3D坐标(XW,YW,ZW)的纹理函数F(X,Y,Z)
•示例功能:

if trunc(z) is even {
colour of point is red
}
else {
colour of point is white
}

•示例:z = 2.4→红色; 示例:z = 1.9→白色
•假设茶壶坐标具有被缩放到合适的范围;例如 0…n在每个轴上
•使用X和Y计算从轴到茶壶中心的径向距离
•如果trunc(结果)偶数是红色; 其他白色
•可以使用更复杂的功能:
Left: mod(x,a)/a. Right: (sin(x)+1)/2
•这里使用了颜色表
• 功能:

  • X坐标的分数部分(0.0 … 0.99)乘以颜色表中的元素数(256)
  • 处理重复

2.1示例:木材
•我们想建模木材的外观
•2D纹理映射:
为木质表面拍照并将其粘贴到模型上;限于使用照片(或照片)
•3D纹理映射(固体纹理)
•创建产生颜色变化模式的函数
•良好的功能可以产生无尽的模式

•首先定义基于圆柱的功能
•在u,v,w空间,如果trunc(r)是深褐色的,否则浅棕色
•映射x,y,z对u,v,w空间的对象纹理函数已定义
•如果x,y,z空间与u,v,w空间相比,则可能需要刻度函数
•我们可以通过多种方式删除功能的规律性:
•倾斜Tilt(即旋转)(x,y,z)坐标,然后在函数中使用
•(u,v,w)-< Tilt(x,y,z)
•这些都合并为最终结果
•但是,结果仍然太规律了

2.2添加噪点
•要删除常规外观,我们可以在功能中添加随机性(即噪点)
•但是,需要可控。 需要能够:
直观地控制噪点量以产生不同的影响; 每次绘制对象时使用相同的值

•噪点是一次产生的,并存储在低分辨率网格中(u,v,w)
•晶格噪点Lattice noise:3D网格中每个点的随机值
•梯度噪点Gradient noise:每个晶格点的随机单位矢量

•给定浮点(x,y,z)对象位置,将其映射到浮动点(u,v,w)
•计算噪点值n(u,v,w)
使用周围网格点的插值
•n(u,v,w)可用于在过程纹理函数中更改f(u,v,w): 每个中的(u,v,w)空间可能需要映射,例如 缩放
•每次渲染对象,(x,y,z)将生成相同的(u,v,w),从而产生相同的n(u,v,w)
•因此对于n(x,y,z):
map(x,y,z) to (u,v,w), return n(u,v,w)
•为了获得更多控制,可以将噪点(x,y,z)重写为:
noise(fx, fy, f*z) * a
其中f控制频率并控制幅度

2.3噪点和时间
•噪点功能(即噪点网格)也可以与一个或多个2D纹理图一起使用
•示例:火焰的纹理图或火焰颜色的程序模型
•使用噪点功能为纹理增加湍流:
u,v噪点平面改变质地;
w轴充当时间;
随着时间的流逝,警惕会随着时间的推移改变噪点轮廓

2.4 3D纹理映射与2D纹理映射
•2D纹理映射
•根据映射,可以压缩或拉伸2D纹理图,尤其是在对象变形的情况下:
非平凡拓扑的尴尬:拆开和艺术家绘画需要(耗时)
易于产生许多2D纹理,例如光摄影
•3D纹理映射
基于函数f(x,y,z),因此可以生成任何拓扑级别的细节
如果对象变形,则需要额外的工作
可能很难设计复杂的颜色模式 - 试验和错误

3.结合纹理图
•可以将纹理图组合在一起以产生更复杂的效果
•基于阴影树的想法

4.基于物理的渲染Physically-based rendering(PBR)
• See https://learnopengl.com/PBR/Theory
•三个条件:
1.基于微纤维表面模型
2.保存能源
3.使用基于物理的双向反射分布功能(BRDF)
在计算机图形学中,BRDF(Bidirectional Reflectance Distribution Function,双向反射分布函数)是真实感图形学中最核心的概念之一,它描述的是入射光线经过某个表面反射后如何在各个出射方向上的分布。BRDF模型是绝大多数图形学算法中用于描述光反射现象的基本模型。
顾名思义,BRDF就是一个描述光如何从给定的两个方向(入射光方向l和出射方向v)在表面进行反射的函数。

•仍然是现实的近似
•地图范围,例如
颜色/反照率(/散布)地图
(镜头地图 - 未使用)
粗糙/光泽图
颠簸/正常/排量图
金属地图
不透明度地图(透明度)
掩盖地图:空腔图,环境阻塞,曲率地图,厚度地图(伪造地下散射),位置图,ID地图

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值