UE4 材质学习笔记01(什么是着色器/PBR基础)

1.什么是shader

着色器是控制屏幕上每个像素颜色的代码,这些代码通常在图形处理器上运行。

现如今游戏引擎使用先进的基于物理的渲染和照明。而且照明模型模型大多数是被锁定的。

因此我们创建着色器可以控制颜色,法线,粗糙度,金属度,即物体的表面属性,然后游戏引擎自己会为物体照明,着色器控制的是材质属性,就像上面说的那些,而不是光线。

所以我们创建着色器时就专注于左栏的内容,让游戏引擎为我们照明。

1.1介绍UE4材质编辑器的使用。

下面这个时材质的预览界面,右下角可以切换不同的形状,另外左上角还可以切换透视视图和正交视图

然后左上角这个地方可以切换不同选项来查看模型,右面的显示可以隐藏或者显示网格,背景或者统计数据。

 

2.PBR基础

1.什么是PBR

PBR是基于物理的渲染,过去计算机图形只是试图模仿光线的外观,但是使用PBR是在模拟光线的实际行为。这样可以创建更逼真的图像。

PBR有两个主要组成部分,光照属性和表面属性。

光照属性主要由游戏引擎本身控制,表面属性则是由创建的着色器定义它们

2.光照属性

首先先来了解一下光照属性。

光可以来自两种类型的光源:直接光源和间接光源。

直接光源:光从单个方向射入,直接照射到物体表面

间接光源:光从各个方向射入,并在周围环境中反弹,才到达物体表面

在光线照射到表面后,还会发生漫反射和镜面反射以及其它的一些现象,但是我们先来研究这两个最常见的现象。

镜面反射:在一个主要聚焦方向上离开表面

漫反射:在所有方向上离开表面

如果我们将入射和出射的情况结合起来,就会得到四种主要的光表面相互作用

在现实中,这四个的区别几乎不存在,但在计算机图形学中,用这种方式来分解时很方便的,这样我们就可以开发出处理每一个情况的方法。

下面我们来看一下这四个的图像实例

 

 

3.表面属性

1.BaseColor

下面是一个基础颜色纹理的例子。

可以看到它是不包括任何光照或者阴影的,右下角是真实世界中一些物体的颜色的实际颜色

2.Normal

 下面是一个法线贴图的示例

3.Specular

下面是一个Specular贴图的示例。

虽然反射贴图大部分都应该是0.5,但是很明显裂缝是不应该反射的,所以最好的反射贴图就是将一个裂缝的贴图*0.5.

4.Roughness

 下面是粗糙度贴图示例

5.Metallic

当在材质编辑器的根节点给金属度赋值的时候,这本质上是两个材质或者两个着色器合一,会分别由一个着色器来定义金属物体和非金属物体,而你输入的值会决定你使用哪一个着色器

当金属度是0的时候,基础颜色会是物体的漫反射,输入到Specular的值会决定物体的反射率在0-8%之间。但是对于金属度为1的物体,输入的颜色会转变成反射率,并且无论向高光输入什么值都会被忽视掉,并且现在漫反射总是黑色。并且金属度是非黑即白的,因为世界上并没有介于金属与非金属之间的物体

 

如果一个物体的表面是金属的,那么它的SRGB 是要大于180的。下面这个是上面示例里鹅卵石的金属度贴图,很明显这并不是金属,所以它是黑色的。

 另外还有一个AO贴图,虽然这个是光照属性里的,但是这里也说一下

这基本上是一个间接漫反射的乘数,这样物体就不会在不该有的地方得到漫反射。AO和法线贴图都是烘焙出来的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值