Unity HDRP项目实践 —— HDRP光照系统(二)

今天继续学习HDRP的光照系统

 

今天的任务是——进一步学习光照类型

 

光源类型和使用

1、Spot Light(聚光灯)

 

进入Lighting检视面板 介绍参数

Light Layer:控制当前灯对场景中哪些物体投射光线

 

Shape

Shape:光圆形状。可选Cone(圆锥)、Pyramid(金字塔)和Box(长方形)

圆锥形的三个参数:Outer Angle(外部角度)、Inner Angle(内部角度)注意这是百分比、Radius(半径范围)对灯光还有阴影柔和程度都有影响,数值越大产生阴影越柔和

Outer和Inner的差可以产生光照衰减的效果

 

Emission

点击右上角齿轮后可以打开与当前光源形状相关的额外参数

上半部分参数前文已做过介绍,这里不再进行赘述,主要补充额外参数的介绍

Reflector(反光板):可以在聚光灯后模拟出一个“隐形”的反光板。把聚光灯向后发射的光线进行反射,从而大大增强聚光灯的光照强度

Affect Diffuse/Specular(影响漫反射/高光)

Range Attenuation(光照范围衰减)

Intensity Multiplier(光照强度倍数):这里的数值将会与Intensity数值进行相乘。通过这个倍数数值,我们可以在Timeline、动画或者脚本来动态控制光源的光照强度

 

Volumetrics(体积光)

因为在当前场景的Volume组件我们添加了Fog选项。因此在该光源下启动Volumetrics选项,将会生成与光源形状相匹配的体积光效果

 

Shadow

Resolution(阴影分辨率):用于设置阴影的分辨率大小

Near Plane:用于控制当前光源开始投射阴影的距离

Contact Shadows:用于补充细节阴影

...

 

强力探照灯效果

我们可以通过启用Reflector来产生此类光照效果

 

2、Point Light(点光源)

这盏灯由四部分组成

(1)灯具的模型网格,包括灯罩和下面的支架。

注意:将Rendering Layer Mask设置为Light Layer 3,意思是只有那些在Light组件中把Light Layer3加入影响范围的光源,才能为物体提供光照信息

(2)在灯具中间,用于表示灯泡的模型网格带自发光材质

(3)灯具的主光源,自带Light Cookie遮罩,用于模拟光线被灯具遮蔽的效果

注意:为了不照亮灯具本身,在Light Layer中需要禁用Light Layer3

(4)灯具的次要光源。用于提供玻璃灯罩的效果和把灯具本身照亮。因此范围和强度都调整到很小的范围

注意:因为这个光只用于照亮灯具,Light Layer需要设置为Light Layer3

 

其他的点光源 实现方法类似

 

3、Area Light(面积光)

我们可以通过面积光来模拟一个发光通道的入口

 

Shape

Emission

Display Emissive Mesh(显示自发光网格):启用该选项我们才可以看到光源的形状

 

4、给灯光添加Light Cookie

(1)给聚光灯设置Light Cookie

给聚光灯设置Light Cookie相对简单,我们可以直接将一张纹理贴图放到Cookie中进行设置

效果如下:

 

(2)点光源设置Light Cookie

点光源的LightCookie制作相对复杂。需要通过制作Cubemap来实现效果

一般制作流程有:3dsmax+Arnold渲染器和Unity的Progressive Lightmapper两种方法

这里不多介绍了

 

posted @   fjnloo  阅读(1411)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 【.NET】调用本地 Deepseek 模型
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
点击右上角即可分享
微信分享提示