千家信息网

Unity3D如何实现光照贴图技术

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,小编给大家分享一下Unity3D如何实现光照贴图技术,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!概念Lightmappi
千家信息网最后更新 2026年11月03日Unity3D如何实现光照贴图技术

小编给大家分享一下Unity3D如何实现光照贴图技术,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

概念

Lightmapping光照贴图技术是一种增强静态场景光照效果的技术,其优点是可以通过较少的性能消耗使静态场景看上去更加真实,丰富,更加具有立体感;缺点是不能用来实时地处理动态光照。当游戏场景包含了大量的多边形时,实时光源和阴影对游戏的性能的影响会很大。这时使用Lightmapping技术,将光线效果预渲染成贴图使用到多边形上模拟光影效果。

烘焙参数

Object选项卡

"All"组中的参数

Lightmap Static:选中则表示该物体将参与烘焙。

Scale In Lightmap:分辨率缩放,可以使不同的物体具有不同的光照精度。这样可以根据实际场景,令远景中的物体采用较低的分辨率,节省光照贴图的存储空间。而较近的物体采用较高的分辨率,使贴图更加逼真。

Lightmap Index:渲染时所使用的光照贴图索引。值为0,表示渲染时使用烘焙出来的第一张光照图;值为255,表示渲染时不使用光照图。

Tiling X/Y和Offset X/Y共同决定了一个游戏对象的光照信息在整张光照图中的位置,区域。

"Lights"中的参数

Lightmapping:有3种类型可选

  1)RelatimeOnly:光源不参与烘焙,只作用于实时光照。

  2)Auto:表示光源在不同的情况下作不同的响应。在烘焙时 ,该光源会作用于所有参与烘焙的物体;在实际游戏运行中,该光源会作为实时光源作用于那些动态的或者没有参与过烘焙的物体 ,而不作用于烘焙过的静态物体。在使用Dual Lightmaps的情况下,对于小于阴影距离 (shadow Distance,Unity中用于实时生成阴影的范围,范围之外将不进行实时生成阴影)的物体 ,该光源将作为实时光源作用于这些物体 ,不管是静态还是动态 。

  3)表示光源只在烘焙时使用,其他时间将不作用于任何物体。

Color:光源颜色。

Intensity:光线强度。

Bounce Intensity:光线反射强度。

Baked Shadows:烘焙阴影。有三种类型可以选择

  1)Off:光源对象不产生阴影。

  2)On(Realtime:Hard Shadows):产生轮廓生硬的阴影。

  3)On(Realtime:Soft Shadows):产生平滑的阴影。

Shadow Samples:阴影采样数,采样数越多生成阴影的质量越好。

Shadow Angle:光线衍射范围角度。

Bake选项卡

Mode:映射方法。

  1)Single Lightmaps:最简单直接的方法,对性能及空间的消耗相对较小。可以很好地表现大多数静态场景的光影效果。

  2)Dual Lightmaps:在近处使用实时光照和部分Lightmap光照,在远处则使用Lightmap光照,同时在实时光影和静态光影之间做平滑过渡,使得动态光照和静态光照可以很好的融合。

  3)Directional Lightmaps:一方面将光影信息保存在光照贴图上,同时还将收集到的光源方向信息保存在另一张贴图中,从而可以在没有实时光源的情况下完成Bump/Spec映射,同时也还原了普通光照图的光影效果。

Quality:生成光照贴图的质量。

Bounces:光线反射次数,次数越多,反射越均匀。

Sky Light Color:天空光颜色。

Sky Light Intensity:天空光强度,值为0时,天空色无效。

Bounces Boost:加强间接光照,用来增加间接反射的光照量,从而延续一些反射光照的范围。

Bounces Intensity:反射光线强度的倍增值。

Final Gather Rays:光照图中每一个单元采光点用来采集光线时所发出的射线数量,数量越多,采光质量越好。

Interpolation:控制采光点颜色的插值方式,0为线性插值,1为梯度插值。

Interpolation Points:用于插值的采光点个数。个数越多,结果越平滑,但是过多的数量也可能会把一些细节模糊掉。所以说采光点并不是越多越来,这容易导致过度平滑。

Ambient Occlusion:环境光遮蔽效果。

LOD Surface Distance:用于从高模到低模计算光照贴图的最大世界空间距离。类似于从高模到低模来生成发现贴图的过程。

Lock Atlas:选中,则会将所有的光照图区域锁定,即将物体使用光照图相关的Tiling X/Y和Offset X/Y属性锁定,同时也将不可以再调整光照贴图的分辨率属性以及添加新的烘焙物体到光照图。

Resolution:光照贴图分辨率。勾选视图窗口右下角Lightmap Display面板的ShowResolution选项,即可显示单元大小。假设Resolution为50,那么在10*10个单位面积的平面网格上将占用光照贴图上500*500个像素的空间。

Padding:不同物体的烘焙图的间距。

Maps选项卡

Light Probes:用于设置当前使用的Light Probes Group的引用。

Array Size:设置光照贴图个数。

Compressed:启用使用压缩纹理格式。

烘焙

Bake Scene有三个选项:

1)Bake Scene:烘培整个场景,如果场景中有编辑好的Light Probes,那么也同时烘焙Light Probes。

2)Bake Selecte:只烘焙选择的部分。采用Bake Selected功能在原有基础上进行添加或者更新,同时系统会保留之前的光照图。这样不会因为部分改动而需要重新烘焙整个场景,只需要烘焙改动的部分,大大提高了烘焙效率。

3)Bake Probes:只烘焙Light Probes。

示例

1 创建一个项目,在场景中绘制如下:

选中Cube,在Inspector面板中勾选Static,这样可以使得Cube参与烘焙。

2 打开菜单栏中Window->Lightmapping选项,会弹出Lightmapping视图。此时选中场景中的Directional Light,在Lightmapping视图中的Object标签页中会出现对光源的设置。参数设置如下:

3 Bake标签页下参数设置:

4 在Scene视图右下角的Lightmap Display对话框中勾选Show Resolution复选框,就可以看到光照图在模型上的分辨率。

5 单击Lightmapping视图右下角的Bake Scene,选中Bake Scene映射模式,就开始生成Lightmaps。

前后对比效果如下:

1)烘焙后:

2)烘焙前:

注:必须将plane的属性设置为Static,否则Cube将不会有阴影显示。

没有将plane的属性设置为Static,效果图如下所示:

以上是"Unity3D如何实现光照贴图技术"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

光照 贴图 光源 物体 阴影 场景 实时 效果 光线 静态 作用 光影 分辨率 同时 反射 生成 技术 不同 参数 视图 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网黑科技 南京欣网互联网络科技 广东万易互联网科技有限公司惠州分公司 新华互联网科技 河南真二互联网科技有限公司 盈实互联网科技 麻工互联网科技 世界互联网领先科技成果 互联网科技logo设计 左右互联网络科技 卫星互联网科技股票 青岛中康互联网医疗科技有限公司 广州慧亚互联网科技怎么样 互联网科技人工智能实验室 民营互联网公司国防科技 佛山市翊博互联网络科技有限公司 梅州GM互联网络科技有限公司 广州富喜互联网络科技 下一代互联网重大应用科技园 上海万顺科技互联网有限公司招聘 山东特亿宝互联网科技有限公司 互联网科技公司华为 互联网医疗科技 老年人脱离互联网科技的作文 科技赋能互联网健康 深圳前海聚择互联网科技有限公司 茂名市互联网科技产业园 明优互联网科技有限公司 互联网科技公司营业执照怎么办理 互联网第三次科技革命特征
0