Unity光照渲染(二)

Unity光照渲染(二),第1张

之前的用那个属性让静态物体影响动态物体比较消耗性能

导入素材

打开sence

把灯光改为Mixed模式 然后出了小球其他都改为静态

这个改为Linear效果好

点击 然后就可以在Sence里面左键多选

不够的话可以Ctrl D复制

然后勾上这个 有的unity版本是另一个

这样静态物体也可以阴影影响动态物体 但是物体颜色的光好像不太明显 但是好像是比较消耗CPU性能 因为每个小球都在为周围环境取样

是室内效果对象反射取样 会受到环境影响 而不是天空盒

新建一个材质 这两个拉满 拖给小球

创建反射探针

然后小球反射了天空盒 还有两个物体

但是移动位置反射位置不会变化

找到反射探针 改变这个是实时反射每一帧更新

然后这个黑的是什么

就是小球自己 可以设置层

把小球改为这一层 然后把反射探针照射的层去掉就行了

然后就OK了

这样就和小球贴在一起了 可以带着走

这个是时间切片 第一个9帧 第二个14帧 第三个每帧 更新率

烘焙时可以分开烘焙反射探针 还是烘焙贴图

然后反射的东西会被烘焙储存

就是场景名下的文件夹的这个

俩素材拖到unity

这个模型记得打钩

材质勾上自发光 然后拖到1以上出现HDR这样可以让发光更强

把灯关了就比较高大上

导入

打开这个场景

创建拖进去

焦距调0.1

运动模糊 运行时

调整颜色纠正 突然变天

User Lut 就是颜色修正 是把所有颜色偏向这个图的颜色 需要特殊的图

需要用到PS 把图片设置好颜色 然后把色阶复制到这个图上 在用这个图就能和之前P的图片一样的效果了

这个是色差

是配合这个一起使用 有一种镜头光晕的感觉

这样被攻击 还有睁眼效果

这个是噪点

Legcay Vertex Lit 最多到顶点级别 不支持实时阴影

用于旧机器 速度快

Deferred 延时渲染 支持多盏灯

Foward前向渲染 支持抗锯齿 多灯光就会卡

选择这个

然后打开之前的Post

然后就Cube就有反射草的效果

打开Lighting面板

mode改成线性

这个雾开始到结束效果的距离

比较真实

一般玩游戏我们都看FPS 卡不卡

现在主要看这两个

之前的drawCall整合到Batches批处理里

批处理

在屏幕上渲染物体,引擎需要发出一个绘制调用来访问图形API。每个绘制的调用都要进行大量的工作来访问图形API,从而导致了CPU方面显著的性能开销

Unity在运行时可以将一些物体进行合并,从而用一个绘制调用来渲染他们。这叫批处理。Unity批处理的越多渲染性能越好

材质

相同材质物体可以批处理

如果2个材质纹理不同 可以纹理合并 两张纹理合成一个大的纹理

打开之前的一个Demo

Batches比较高

动态批处理

如果物体有相同材质,Unity会自动对物体进行批处理

但是需要在每个顶点上进行一定开销,仅支持小于900顶点的网格物体

静态批处理

就是把物体Static打钩 没有大小网格限制

静态批处理 往往比动态批处理更有效

需要在PlayerSttings里Other Settings勾选

      灯光是游戏场景的重要组成部分,决定你的3D环境的颜色和氛围。通过相互搭配,让场景更加层次分明、光彩绚丽。

       Unity中的光源有四种类型:Directional Light(平行光)、Point Light(点光源)、Spot Light(聚光灯)、Area Light(区域光)。

       1、Directional Light 平行光/方向光/定向光: 平行光的光线是互相平行的,不管对象离Directional Light光源多远,它投射出来的阴影看起来都一样,而且Directional Light没有真正的光源坐标,把它放置在场景任何地方都不会影响光照效果,只有旋转会影响Directional Light的照射结果。平行光影响场景的所有物体,类似于自然界中太阳光的照明效果。通常用于(室外)模拟太阳光,它的特性就像是个太阳,可以被放置在无穷远的地方,能从无限远的距离投射光源到场景。

      在Unity里Directional Light还会与天空盒系统(程序天空盒)关联,就是把Directional Light做为太阳显示并绑定在天空壳上。指定路径(Window->Rendering->Lighting settings(打开Lighting菜单)->Scene->Sun Source)。

       2、Point Light 点光源: 点光源向四面八方(所有方向)发射光线,影响其范围内的所有对象,亮度从中心往外递减到0为止,类似灯泡的照明效果。适合用来制作像灯泡、武器发光或爆炸等效果。点光源的阴影为了要给六个不同的世界方向会运算六次,因此点光源的阴影运算是很图像处理器资源的,必须谨慎使用。注意:目前点光源不支持阴影的间接反射,这就表示由点光源产生的光线,只要在距离内有可能会穿过对象反射到另外一面,这可能会导致墙壁或地板 漏光 ,因此放置点光源要格外注意,然而如果是采用Backed GI的话,就不会有这类的问题产生。

        3、Spot Light 聚光灯: 聚光灯从光源发出,在一个方向上按照—个锥形的范围发射光线,该锥形是由聚光灯角度 (Spot Angle) 和范围 (Range) 界定的,光线会从源头到设定的范围慢慢衰减到0。类似手电筒, 路灯, 壁灯,舞台灯光等等照明效果。因为投射区域能精确的控制,因此很适合用来模拟打在角色身上的光。 聚光灯也是比较耗费图形处理器资源的。

       4、Area Light 区域光/面光源 :这种光能从各方向照射一个平面的矩形截面的一侧。该光源无法应用于实时光照,仅适用于光照贴图烘焙 lightmap baking, 

Type 类型: 灯光对象的当前类型

Color 颜色: 光线的颜色

Range 范围: 点光源/聚光灯有这个属性

Spot Angle(聚光灯角度): 聚光灯的角度

Mode 模式: 【Realtime 实时; Mixed 混合; Baked 烘培】

Intensity 强度: 光线的明亮程度

IndirectMultiplier 间接光强度

ShodowType 阴影类型(是否开启阴影): 【No Shadows 无阴影;Hard Shadows 硬阴影:锯齿强度比较明显;Soft Shadows 软(柔和)阴影:软阴影效果比硬阴影效果好,但是耗费性能。】

      Strength 硬度: 阴影的黑暗程度,取值范围是在0和1之间。

      Resolution 分辨率: 阴影的细节水平

      Bias 偏移: 用于比较灯光空间的像素位置与阴影贴图的值比较的偏移量。当值太小时,物体的表面会有来自于自身的阴影,物体就像长了痘痘一样。当值太大,光源就会脱离了接收器(彼得平移)。影子显示错位时调整。

Cookie(Cookie投影): 以纹理的Apha通道作为一个遮罩,使光线在不同的地方有不同的亮度。如果灯光是聚光灯或方向光,这必须是一个2D纹理;如果灯光是一个点光源,它必须是一个立方图(Cubemap)。

Cookie Size(缩放Cookie投影): 只用于方向光。

Draw Halo 绘制光晕: 如果勾选此项, 光线带有一定半径范围的球形光晕被绘制。

Flare:耀斑/光晕/眩光: 光晕对象是被镜头光晕组件( Lens Flare Components)使用的源资源。光晕本身是一个纹理文件和具体的信息的结合,确定眩光的行为。然后,当你想在一个场景中使用眩光,将镜头光晕(Lens Flare)组件贴到一个游戏物体上,并拖动你要使用到镜头光晕的耀斑属性的耀斑,就像给网格渲染器( Mesh Renderer)指派一个材质(Material )一样。

Render Mode 渲染模式:

      Auto 自动:

      Important 重要: 灯光逐个像素渲染。只用在一些非常重要的效果(比如玩家的车的车头灯)。

      Not Important 不重要: 灯光总是以最快的速度渲染。顶点/对象光模式。

Culling Mask 消隐遮罩: 有选择地使组对象不受光的效果影响

Lightmapping 光照贴图: 仅灯光实时计算(RealtimeOnly)、自动(Auto)、烘焙( BakedOnly)

指定位置Edit ->Project Settings ->Player ->Other Settings。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11394143.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存