unity3DGI
Realtime GI,实时全局光照,
1.构成 : 可实时更新的lightmap + 可实时更新的光照探头(light probe)+ 可实时更新的cubemap(Reflection probe)
实时全局光只实时计算物体之间的bounce light(物体之间来回反射的光)
实时全局光的实现:静态物体之间的bounce light可以在预先计算阶段搞定(light map)
被静态物体照射到的动态物体,通过实时更新的光照探头搞定
被动态物体照射到的物体,还不支持
2.
Unity5 的全局光照除了新引入的实时GI之外,也有过去的离线烘焙的方式,或者也可以选择二者合用的方式(不过这不是一个省效率的方式)
1离线烘焙
将light的Baking设为Baked,标记那些static的物体,在Lighting window中的Baked GI对应的就是烘焙的实时光,所以这是要把Precomputed Reatime GI关闭
2实时
将light的baking设为realtime,标记那些static的物体,在lighting window中将Baked GI关闭,将Precomputed Realtime GI开启,注意默认Precomputed Realtime GI的resolution并不高,如果想得到比较不错的效果,可以将它调高。在运行时就可以看到实时的GI效 果。
3 烘焙GI加实时的局部光照
这可能是更加主要的做法,即static的物件采用离线的烘焙GI,而非static的物件使用实时的局部光照,这需要将light调为mixed,然后将lightmap里面开启baked gi,而将realtime gi 关闭。
4 烘焙的GI叠加实时的GI,这种做法基本没什么好处,而且效率也很低,这种组合是将light设为mixed,然后将light setting里面的baked gi和 relatime gi全开启。
3.在unity中,物体最终的光照贴图占用多少像素,决定了预计算全局光照的计算量。同时,如我们前面说到的,占用多少像素是由Realtime Resolution和物体所选定的lightmap parameter中的lightmap resolution所决定的。
unity3DGI的更多相关文章
随机推荐
- Shell的18条常用命令整理
1. ls: 类似于dos下的dir命令 ls最常用的参数有三个: -a -l -F. ls –a Linux上的文件以.开头的文件被系统视为隐藏文件,仅用ls命令是看不到他们的,而用ls -a除 ...
- js获取当前网页header头部信息
思路,通过ajax重新请求当前页面,用getAllResponseHeaders方法获取: var req = new XMLHttpRequest();req.open('GET', documen ...
- BGRA与BGR的相互转换
BGRA转BGR void BgraToBgr(BYTE *bgraData,int *bgraSize) { ,j=; j<*bgraSize; i+=,j+=) { *(bgraData+i ...
- Docker基础入门
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有任何 ...
- TOJ3216 我要4444
传送门 http://acm.tzc.edu.cn/acmhome/problemdetail.do?&method=showdetail&id=3216 时间限制(普通/Java) ...
- mybatis知识点(已掌握)
1.${} 和 #{} 的区别? ${} 直接显示传入数据,不能防止sql注入,一般用于传数据库对象(比如表名). #{} 传入数据被当成字符串,自动加上双引号,防止sql注入. 2.有哪些Execu ...
- EOJ Monthly 2018.7 B.锐角三角形(数学几何+思维)
描述 是否存在面积为S/2的整点锐角三角形?存在输出Yes并输出三个整点坐标,否则输出No. 注意如果存在输出的坐标必须在long long范围内. Input 第一行一个整数S(1<=S< ...
- TZOJ 数据结构期末历年题目
A.数据结构练习题――线性表操作 线性表的基本操作 1.在某个位置p插入val,复杂度O(p) 2.在某个位置p删除val,复杂度O(p) 3.查找某个位置p的值,复杂度O(p) 4.清除链表,复杂度 ...
- Java_7.1 ArrayList应用点名器
1.ArrayList同样可以添加自定义的类 将学生类添加到ArrayList集合中,其中学生类包括学生姓名,年龄 自定义学生类 package demo1; public class Student ...
- find和find_if,value_type
find算法:返回 [first,end)中第一个值等于value元素的位置 线性复杂度:最多比较次数:元素的总个数 find函数的最后一个参数,必须是string,float,char,double ...