位置: 编程技术 - 正文

Unity 5 全局光照GI与新的烘焙系统初探(unity区域光怎么做)

编辑:rootadmin
GI是啥

推荐整理分享Unity 5 全局光照GI与新的烘焙系统初探(unity区域光怎么做),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:unity 环境光,unity全局光照设定,unity 环境光,unity 光线,unity区域光没反应,unity区域光没反应,unity区域光没反应,unity全局光照设定,内容如对您有帮助,希望把文章链接给更多的朋友!

Realtime GI,实时全局光照,听上去就是一个非常高大上的词,但是越高大上就越令人心生敬畏,因为世上没有免费的午餐,越好的效果意味着越多的消耗,对于移动平台来说,这样的消耗受不受的起呢?首先来说说GI是干啥的,非常粗略的来描述下,如果说我们以前的光照系统就是由光源 - 物体 - 视点组成的话,那么全局光照系统就是由光源 - n多环境反射光 - 物体 - 视点。就是说GI额外包括了环境反射光的计算,它可以使得渲染出来的场景物体间的光影交互更为真实。

如果是离线烘焙的话,n多的环境反射光就是通过辐射度算法或者是光线追踪算法一点点计算出来的,但是实时渲染没有这么多的时间。为了实现实时的GI,简单的说来,Unity(Enlighten GI)需要预计算一些信息,这些信息大概包括场景间物体之间的位置、反射关系,以及一个环境反射树(这些都是我瞎猜的),在实时渲染时,利用这些信息Unity会动态生成一张间接光照贴图,像原先的Lightmap一样只不过上面记录的是物体表面受到间接光的信息,这样在实时渲染时就会看到物体受到反射光的影响了。

因此Unity GI有了如下特点:

只能作用于位置静态的物体,因此它是实时的却仍然是静态的光源可以实时变化物体的材质可以实时变化,并对附近物体产生影响

而GI产生的开销主要包括:

对间接光照的额外计算,相当于多一个Pass处理多一个光源当光源、物体材质改变时对于间接光照图的重新计算,这个计算是在一个单独的线程中进行的不会导致主渲染进程延迟,但是会产生效果延迟,也就是说当你改变光源时场景的颜色亮度可能并不会里面就变化。需要一些额外的内存保持GI计算所需要的间接光照贴图,以及场景物体关系信息等。GI与Lightmap

看的出来GI的额外性能消耗是可以接受的,我在手机上进行测试,即使是很大很复杂的场景跑起来也完全没有问题(当然也是因为我是在iPhone6上测的)。不过多数情况下如果说你的场景中不存在光线变化或是动态的自发光材质,还是固定镜头的话(没错,我说的就是RPG),GI对于游戏来说仍然是没有用处的,所有GI能做到的事情用简单的Lightmap就能达到同样的效果。现在问题来了,Unity配合GI又搞了一个新的烘焙系统,这个系统要怎么玩儿呢。

Unity 5 全局光照GI与新的烘焙系统初探(unity区域光怎么做)

首先,现在当你说烘焙时一定要弄明白你想烘焙的是Realtime GI所使用的间接光照图和场景树信息还是Static Lightmap,然后以此决定使用光源的类型是Realtime/Mixed/还是Baked。首先来说烘焙的方式,在Lighting面板中Precomputed Realtime GI 与Baked GI分别对应Realtime GI与Static Lightmap的烘焙。

组合起来就是三种(跟我说你啥都不烘的可以走了):

只烘焙RealtimeGI

关闭Baked GI或者场景中的全部光源类型设置为Realtime。这意味着没有任何光照颜色会被预先烘焙计算,引擎在烘焙时只是存储场景内静态物体间的关系,当烘焙完成后你可以自由的调整光源或物体材质,并实时地看到效果。 此时在Scene中观察Baked结果可以看到没有任何静态颜色被烘焙出来。 在仅使用RealtimeGI时,光源应该选择Realtime类型。烘焙选项Realtime Resolution对应前文所说的间接光照图,值越高间接光的效果就越明显(其实应该是越准确,当分辨率太低时间接光会因像素过滤而变弱) Realtime Resolution = Realtime Resolution = 1

只烘焙Static Lightmap

取消Precomputed Realtime GI的勾选即为同原来一样的纯静态光照图烘焙。光源的选择则同原来一样,Realtime的灯光不参与烘焙,但同时作用于动态与静态物体上;Mixed光源参与烘焙,实时运行时仅作用于非静态物体;Baked光源仅作用于光照烘焙,不参与实时光照计算。 再次观察SceneView可以看到烘焙出来的颜色。 在Lighting面板中的Lightmaps页签中也可以看到烘焙出来的光照图。咦?怎么有两张,稍后解释 如果使用纯Static Lightmap烘焙时会有一个Indirection Resolution的设置,这个设置就对应于Precomputed Realtime GI中的Realtime Resolution,同样是控制间接光的影响,产生的效果是一样的。

同时烘焙Static Lightmap与RealtimeGI

如果同时烘焙Static Lightmap与RealtimeGI会发生什么事情呢?首先光源产生的光照以及物体间的二次反射光线都会被直接烘焙在静态光照贴图上,因此前文所提使用GI可以自由实时调整光源或是物体材质的效果在这种烘焙模式下都是没有用的,但是自发光材质以及天空光产生的辐射光线在这种模式下仍然是可以实时变化并叠加作用于已烘焙的颜色上。 光照烘焙颜色信息 辐射度信息 最终合成颜色 辐射度信息图中除了自发光的红色外还有一点点靛青色,这是天空盒产生的颜色,在Environment Lighting中调整Ambient Intensity可以控制天空盒对场景整体明暗的影响。总的来说主体颜色还是静态烘焙出来的Lightmap控制,但是增加了GI中的动态天空光和自发光。总的来说不建议使用这种方式进行场景渲染,又消耗了静态Lightmap和GI所需的内存,又消耗了GI的计算资源,效果还没单个使用的好。

在我看来GI最大的好处是可以让美术实时的看到使用Lightmap烘焙后的场景效果,也就是说首先关闭Baked GI仅烘焙一些Precomputed Realtime GI,随后美术就可以随意的调整光源、物体材质、天空盒等数值并实时观察到场景的最终效果,最后当一切都满意后关闭Precomputed Realtime GI使用Baked GI进行光照贴图的烘焙即可。

Lightmap的其他设置(坑)

这里有大坑,我先挖会儿以后填

NGUI 背包系统加强版 背包切换、格子动态生成、总计。 开发环境win位Unity4.6.3NGUI3.8.2背包子可以配置,动态生成。物品拖放、对换、相同累加背包切换全部显示-包裹1包裹2出售物品后实时更新包裹物品接下

Dialogue System for Unity文档中文对照版(简雨原创翻译)第三篇(口型,语音同步相关) Whentheconversationusesthisdialogueentry,itwillplaytheVoice()commandintheSequencefield.Thiscommandwillplaytheaudioclipandtheanimationandwaituntilbotharedone.当会话使用对话的条目,它将序

Android显示Unity视图 第一次写blog,呵呵,有点激动,主要是方便自己以后复习,写的不好请见谅。。。这次遇到的问题纠结我好久,关键是对Android不熟悉,下面我来说一下

标签: unity区域光怎么做

本文链接地址:https://www.jiuchutong.com/biancheng/377235.html 转载请保留说明!

上一篇:unity脚本的一些笔记(一)(unity脚本编写教程)

下一篇:NGUI 背包系统加强版 背包切换、格子动态生成、总计。(tbc背包插件)

  • 塑料制品开票税率
  • 计提企业所得税会计分录怎么做
  • 所得税费用属于什么科目借贷方向
  • 加油卡充值可以退吗
  • 投标保证金利息计算起止时间
  • 有形动产租赁属于应税劳务还是应税货物
  • 购税盘需要什么东西
  • 劳务公司如何避税与避费
  • 代开专票收入未超30万税务怎么处理
  • 资本公积什么情况下转增资本
  • 商品流通企业应收账款很少的原因
  • 国有资产转让房产
  • 土地使用权出让金多少钱一平米
  • 工会经费交税会计分录
  • 非货币性资产交换准则
  • 补计提上一年度费用
  • 财产租赁合同印花税申报期限
  • 租赁合同印花税计税依据含税吗
  • 预估材料入账后冲回的步骤
  • 盈余公积为0说明什么问题
  • 原材料账户期末贷方余额反映
  • 本年利润有期末余额吗
  • 利润表有盈利能力吗
  • 应用程序发生异常 未知的软件异常(0xe06d7363)
  • 如何编制处置固定资产
  • 月底财务为什么要关账,暂时开不了发票
  • 成本核算核算要素有哪些
  • 违约金合同条款怎么写
  • 怎么获得2021
  • 摊余成本计量的金融资产
  • 本月购买原材料怎么入账
  • php怎么设置管理员权限
  • php redis常用命令
  • 损失函数是什么
  • cvpr2020目标跟踪
  • php 编码
  • 留抵税额一般记哪个科目
  • 旅行社开的发票怎么记账?
  • 二手车交易发票怎么收费
  • ps抠图之后怎么拿出来
  • 应收账款属于哪个会计要素
  • 个税申报本期收入是填应发还是实发
  • 如何关闭mysqld
  • mongodb部署安装
  • 帝国cms自动推送插件
  • 不确认递延所得税资产的特殊情况举例
  • 政府会计的会计要素有哪几个?会计要素之间的关系如何?
  • 财务报表的填写要求
  • 深入mysql源码
  • 出口免抵增值税税率
  • 收到发票挂账如何处理
  • 金税盘注册码怎么查
  • 增值税在实际计算时采取什么方法
  • 主营业务成本记借方还是贷方
  • 进项税额转出缴税放在什么科目里
  • 长期待摊费用摊完了之后怎么处理
  • 在建工程的会计代码
  • 公司收不到的账款怎么办
  • 会计报表的作用概括起来就是为报表使用者提供会计信息
  • Mysql中FIND_IN_SET()和IN区别简析
  • window装机必备应用
  • 微软停止对xp的操作
  • ubuntu彻底删除
  • smss.exe是干嘛的
  • win7电脑总是自动安装乱七八糟的软件
  • unity urp 性能
  • Ext中下拉列表ComboBox组件store数据格式用法介绍
  • 对用户输入的判断
  • 用python编写程序
  • Unity3D游戏开发标准教程
  • cmd命令基础
  • Node.js中的全局对象有
  • JavaScript中的数据类型
  • kraken框架
  • pythonstl
  • android中toast用法
  • 湖南税务发票查验平台官网
  • 国土局和地税局的区别
  • 小规模纳税人销售额怎么算
  • 国税地税征管
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设