求助,unity里怎么做光晕shader

求助,unity里怎么做光晕shader,第1张

注意到网上的Shader代码中的最后一行FallBack "Specular"没有?该语句的意思是如果没有找到适合该Shader的硬件,那么自动匹配Unity3D自带的Specular Shader。 那么答案就很清楚了:Unity3D自带的Shader必须全面的针对几乎所有可能出现的硬件

Unity 提供的 4大光源之一 平行光 可以把它想象成 太阳

Unity4大光源之一 聚光灯 可以把它想象成 手电筒

我们来了解一下Spot面板里面有什么

Range :聚光灯的范围

Spot Angle :聚光灯的照明角度

其他的在1-1图中有介绍

Unity4大光源之一 聚光灯 可以把它想象成 路灯

Range :点光源的直径/范围

Unity4大光源之一 聚光灯 可以把它想象成 灯条

而 区域光  和前面3个有稍稍不同看翻译

Lens Flare平行光中,一项 Flare 可添加光晕文件

Flare : 光晕需要提供Flare文件

Color : 光晕的颜色

Brightness : 光晕的亮度

FadeSpeed : 光晕的淡化速度

lgnoreLayer : 需要忽略的图层

Directional : 是否是定向光

在Unity中控制我们的渲染的面板就是Lighting面板那么我们怎么打开他呢如图6-1

Window->Rendering->LightingSettings

点击Lighting Settings后我们就到了Lighting面板,在Environment中的Enviroment Lighting 的Source选择的是环境中的物体,受什么环境光的影响。我这里选的是SkyBox,就是说无体表面的颜色会跟随天空盒的影响而变化。

Skybox Material : 天空盒材质

Sun Source : 太阳光

Source :天空盒环境光/颜色

intensity Multiplier : 光的强度

Environment Reflecrions : 环境光反射

Lightingmapping Setting这个是对烘焙的设置(很重要),有两个模式Progressive(渐进式)和 Enlighten。默认模式是Progressive(渐进式)

indirect Resolution(间接光分辨率)

Lightmap Resolution(光照贴图分辨率)

Lightmap Padding(光照贴图间隔)

Lightmap Size(光照贴图尺寸)。最大为2048,越大烘焙的时间以及贴图的大小就越大

Compress Lightmaps(压缩光照贴图)

Ambient Occlusion(环境光遮蔽)

Final Gather(最终收集器)

Directional Mode(平行模式)

Indirect Intensity(间接光强度)

Albedo Boost(反照率增强)

Lightmap Parameters(光照贴图参数)

Fog :启用或禁用场景中的雾效,对于deferred rendering(延迟渲染)雾效并不适用,对于延迟渲染,后处理雾效可能能满足需要。

Color:雾的颜色。

Mode :设置雾效随着相机距离变化的累积方式。Exponential Squared(指数平方),Exponential(指数),Linear(线性)。

Density : 密度

Holo Texture(光晕贴图):在光源周围绘制光晕纹理。

Holo Strength:光晕的强度。

Flare Fade Speed:耀斑褪色速度。

Flare Strength:定义耀斑的可见度。

Spot Cookie:聚光灯cookie

      灯光是游戏场景的重要组成部分,决定你的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/11625753.html

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

发表评论

登录后才能评论

评论列表(0条)

保存