位置: 编程技术 - 正文

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背包插件)

  • 农产品加工会计分录
  • 滞纳金按年怎么算
  • 备用金三栏式明细账图片
  • 开立个人银行账户的条件
  • 出口退税的发票怎么做账
  • 什么是增值税差额征税政策
  • 小企业营业外支出
  • 电视机在开票中属于哪一类
  • 私车公用油费计入什么科目
  • 公司一直零报税,有问题吗
  • 工程开票是否需要资质?
  • 没有道路许可证的车子怎么处罚
  • 半年付一次房租,房东一般提前多长时间催租
  • 小规模申报个税手续费返还在哪填写信息
  • 小程序交易需要什么条件
  • 超过五年的未弥补亏损怎么处理?
  • swstrtr.exe - swstrtr是什么进程
  • linux系统怎么更改主机名
  • 以前年度的账错了怎么办
  • 收到汇算清缴的现金
  • 批量删除 超链接
  • 一次性工伤医疗补偿金怎么算
  • 股权和债权有无区别
  • 权益法核算的长期股权投资入账价值
  • win11修改版
  • 销售退回的处理方法
  • 事业单位无职务人员称什么
  • 逾期包装物押金收入计入什么科目
  • 股权转让定金怎么做账
  • 包装物押金收入是否计入销售额
  • vue3组件写法
  • php字符串在另一个字符串出现
  • PHP中empty,isset,is_null用法和区别
  • 买保安服装
  • 股权收购印花税填哪里
  • uni vuex
  • 前端基础知识总结
  • typescriptlang
  • 命令行修改mac地址
  • chown命令和chmod
  • 增值税税点怎么算3个点
  • 培训费属于什么税收分类编码
  • 低值易耗品包括哪些
  • 在建工程项目的范围包括
  • 出售其他债权投资产生的收益为什么计入留存收益
  • PostgreSQL教程(五):函数和操作符详解(1)
  • 临时用工费用计入什么会计科目
  • 银行代发的工资公司要求返还然后发一半
  • 收到银行承兑如何做账
  • 非公益捐赠如何入账
  • 涉及销售费用如何计算
  • 债权资产包括哪些科目内容
  • 银行取现怎么预约
  • 投资性房地产在建
  • 汇算清缴退款如何做账
  • 预收账款可以挂在应收账款
  • mysql连接问题
  • 在sp_executesql中使用like字句的方法
  • linux的日志文件
  • 电脑充电系统故障
  • wsinspector.exe是什么进程
  • 在linux系统中命令
  • win10浏览器没有网络连接
  • win7桌面图标靠右
  • win10系统需不需要装杀毒软件
  • win10下itunes
  • w10系统如何
  • Android---60---Notification 通知栏的简单使用
  • javascript语言介绍
  • node中使用什么引入模块
  • js定时器有哪些,区别及用法
  • FileUtils文件工具类
  • python中的魔法函数
  • 废旧物资税务风险评估
  • 纳税服务投诉工作要求
  • 简述会计估计及其特点
  • 济南高新发展公告
  • 通州税务短信
  • 公司汽车用油计入什么科目
  • 发票验旧后还能开票吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设