在unity中,常常会碰到场景里错综复杂,光照信息众多,而导致性能明显降低的情况。

我们举个例子(左下角圆圈圈是操作角色移动用的手柄,该场景可以漫游):

这是个在安卓平台应用的写实风格场景,通过URP管线,利用灯光实时渲染而成。在这个场景中,我们可以看到:

Batches 已经达到685,

PassCall到达234。

在低端平台上,可能会导致严重卡顿。

我们优化的目标,就是降低这两个数值。

因此,今天我们的知识点在于灯光。

在Unity2021版本中,URP管线的灯光有三种模式:realtime(实时),mixed(混合),baked(烘培)

其中realtime实时光非常消耗性能,但是可以产生实时光照效果;烘培光最节省性能,能提供静态烘培;而mixed混合光照,鉴于两者之间。

目前对这个独立的场景,我们将针对灯光进行优化。也就是我们将会把灯光信息,烘培到灯光贴图里。这个操作可以直接在unity里完成。

▷ 首先,我们打开window菜单里的rendering选项。

▷ 然后点击lighting选项。

▷将mixed lighting选项下的baked global IIIumination勾选,然后lightingMode选择 Subtractive。

为什么要选择 Subtractive?

我们来看官方文档的解释:

Lighting Mode 决定所有场景中使用 Lighting Settings Asset 的所有混合光源的行为,可用的模式有:

· Baked Indirect 模式将实时直接光照与烘焙间接光照结合在一起,提供实时阴影。这种光照模式提供逼真的光照和合理的阴影保真度,适用于中档硬件。

· Shadowmask 模式将实时直接光照与烘焙间接光照结合在一起,为远处的游戏对象启用烘焙阴影,并将烘焙阴影与实时阴影自动融合。这是最真实但也是最耗费资源的光照模式。您可以使用质量设置 (Quality Settings) 来配置其性能和视觉保真度。这种光照模式适用于高端或中档硬件。

· Subtractive 模式提供烘焙的直射和间接光照,仅针对一个方向光渲染直接实时阴影。这种光照模式不能提供特别逼真的光照效果,适合于风格化的艺术效果或低端硬件。

▷ 我们的平台为安卓平台,所以我们选择subtractive。

▷ 之后选择用GPU渲染。

▷ 质量全部都要调为高质量。

▷ 组后点击。

▷ 生成光照贴图,等待一段时间后,渲染完成。

这时候,我们看到batches 下降到490,PassCall  下降到103。

Disable掉场景内灯光,灯光信息也依旧存在。

此时,无光胜有光,没有实时光,但是有光照信息,节省了资源,可以让CPU和GPU在别的地方发挥光和热。

最后我们验证这个方法能否在安卓手机上运行。

▷ 点击file - buildingSettings

▷ 选择安卓平台并且插上测试安卓手机BuildAndRun

▷ 打包出货

大家可以点击这个→灯光demo 链接,安装APK看看实际效果。(注:该APK只适合安卓用户下载,IOS系统暂时无法下载预览。

最后,这个灯光贴图的优化方法,可以应用到很多地方,比如我们以后做倒车入库或者车库内漫游选车、元宇宙等大规模场景建筑物城市等,这可以让低端手机也能感受到写实场景的魅力。

今天的介绍就到这里了,如果你还有其他疑问,欢迎联系我们~~


↓↓↓↓↓↓↓

喜欢此篇文章欢迎评论收藏分享支持小编~

更多技术干货,行业前沿动态,请关注上海怿星科技官方公众号:怿星科技eplanet

Unity优化技巧,此时无光胜有光相关推荐

  1. 复习Unity优化技巧

    复习Unity优化技巧 一.引言 新的格局 有推荐的吗? 二.优化 第一章.优化图形性能 1.分析: A.GPU通常受填充率或者内存带宽制约. 填充率 渲染管线 B.CPU 通常受到需要渲染的批次数的 ...

  2. SEO网站优化最高境界是无刀胜有刀

    SEO网站优化最高境界是无刀胜有刀 网站优化最高境界决定你是否能成为SEO高手的最重要的一点是:不仅会装,还要会扯. 当你说我是SEO时,高手肯定说现在我在做的是SEM. 当你说我是SEM时,高手肯定 ...

  3. Unity 优化技巧集锦

    前言 Unity性能优化是面试的时候经常被问道的一些内容,今天给大家分享一些常用的Unity的优化技巧和思路,方便大家遇到问题时候参考与学习. 包体大小优化 游戏的安装包体大小对于游戏开发而言非常重要 ...

  4. 如何消耗更少资源?Unity优化技巧(上)

    什么是优化? 为了达成相同目标,寻求并采用消耗更少资源的办法的过程 对游戏来说通过特别的技巧,在实现相同的表现效果.流畅度的前提下对硬件机能的需求更低.更平民化.或者在相同性能的平台上,实现更好的画面 ...

  5. 【Unity 优化篇】 | 优化专栏《导航帖》,全面学习Unity优化技巧,让我们的Unity技术上升一个档次

    文章目录

  6. Unity性能优化技巧

    最近看了B站Uinty官方有关性能优化技巧的视频,自己做一些整理. 视频链接: Unite Now - (中文字幕)性能优化技巧(上) Unite Now - (中文字幕)性能优化技巧(下) 堆栈(S ...

  7. 常用Unity的优化技巧集锦

    Unity性能优化是面试的时候经常被问道的一些内容,今天给大家分享一些常用的Unity的优化技巧和思路,方便大家遇到问题时候参考与学习. 包体大小优化 游戏的安装包体大小对于游戏开发而言非常重要,因为 ...

  8. Unity DC优化技巧

    平时总结了一些优化技巧,仅当抛砖引玉,如有不足,多多指教. 1:粒子大小,如果可以的话,粒子的size应该尽可能地小.因为Unity的粒子系统的shader无论是alpha test还是alpha b ...

  9. Unity3d面向英特尔® x86 平台的 Unity* 优化指南: 第 3 部分

    目录 编辑器优化 遮挡剔除 LOD:细节级别 阴影 使用一个摄像头 渲染队列排序 光照贴图 针对复杂模型,使用简单的碰撞器代替网格碰撞器 返回至第 2 部分教程: 面向英特尔® x86 平台的 Uni ...

最新文章

  1. 一维码Code 93简介及其解码实现(zxing-cpp)
  2. 如何使用Extentions创建菜单
  3. 打印http地址打印双斜杠
  4. contos 安装vim自动补全插件 YCM YouCompleteMe
  5. centos6.5下使用yum完美搭建LNMP环境(php5.6)
  6. centos7中安装JDK8-281版本
  7. 这个 “少年黑客”,用黑科技守护独居老人
  8. Java中对象池的本质是什么?(实战分析版)
  9. Google 的垄断正在扼杀自由软件!
  10. atitit.为什么技术的选择方法java超过.net有前途
  11. 拓端tecdat|时间序列建模三部曲
  12. Akka 指南 之「集群分片」
  13. 如何登录华为云服务器
  14. windows系统下Redis下载安装与配置(内附蓝奏云下载地址)
  15. 西瓜测试软件,西瓜视频v2.0.0
  16. 如何在word 插入矢量图
  17. 袁素文_拔剑-浆糊的传说_新浪博客
  18. 视图间切换的时候的动画效果
  19. Nebula 在 Akulaku 智能风控的实践:图模型的训练与部署
  20. 2018医疗器械行业发展

热门文章

  1. 【解决方案】PicGo图片上传失败问题【少走弯路】
  2. java获取月末日期_Java -- 获取当前日期、当月月初日期、月末日期
  3. 我收集的小程序干货汇总-前后台都有,不用谢!
  4. 转载: Android开发浅谈:关于如何把手机壳颜色设置为我们App的主题颜色
  5. 网上花店销售系统(附源码+课件+讲解+资料+数据库)
  6. Netty5的例子,简单介绍Netty的用法
  7. 软件定义广域网和即将到来的网络洪流
  8. 【ICPC46届上海站 Edge Groups】树形dp
  9. python实现图片拼接长图_python实现图像拼接
  10. coreelec 下载app_DY的瞎折腾系列 篇十三:N1多媒体系统CoreELEC升级指南