先来介绍几个重要概念

直接光照(Direct Lighting):光源直接照射到物体表面所以产生的光照信息,进入Unity主场景加载的就是直接光照

间接光照(Indirect Lighting):光源照射到物体表面以后再反射到其它物体上所形成的光照信息

环境光(Ambient Lighting):太阳照射大气层,散射产生天空光。环境光本质是间接光照,因为散射的本质就是反射。

全局照明(Global Illumination):直接光照加上间接光照。

——————————————————————————————————————

Type :光照类型,可以选择spot(聚光灯),Directional(平行光),point(点光源),Area(面光源,只有烘焙才会用到);

1.平行光:最为简单的光照,我们认为受平行光影响的物体接收到的光线方向是一致的,unity中平行光源的位置是无所谓的,可以放在任何位置,这并不会影响光源的方向。

2.点光源:从一个点发出的光,影响范围只有半径范围为r的球体内,且光照强度随着远离球心而不断衰减。

3.聚光灯:同样从一个点出发,但照亮范围是一个锥形区域,我们可以把他想象成手电筒,宏观来看,他是点光源的1/n,光照同样会衰减,由于是锥形,比起圆来计算上要稍微复杂一点,他有一个张开的角度angle可以调节。

4.面光源:目前只有在烘焙时才起作用,向某个方向发射的光,同样会衰减。

Color:光源颜色。

Mode:实时光照,烘焙,混合三种模式。

1.Baked:烘焙好后不会在变化的光,耗费性能最低;

2.Mixed:烘焙好后根据场景变化适当调整,耗费性能中;

3.Realtime:实时监控场景变化,渲染光照,耗费性能最高;

Intensity:光照强度。

Indirect Multiplier:间接光照强度,即太阳光照射到物体之后,物体之间的反射强度,可以调节亮度。ShadowType:阴影类型:Hard Shadows, Soft Shadows, No shadows。

RealtimeShadows:实时阴影,相关参数可以调节光照的阴影效果,同时消耗也会不同。

RenderMode:光照的渲染计算类型,延迟渲染中会用到。

1.important:计算光照时会逐片元计算。

2.not important:逐顶点计算光照或者更高效的计算方式。

3.auto:由unity自己决定此光源的光照计算方式。

Culling Mask:根据物体的layer即层来控制此光源影响物体,我们可以将不想被光源影响的物体标记为统一的layer,在这里设置他们。

——————————————————————————————————————

Lighting的 属性

注意:Lighting窗口设置是全局的

讲解Realtime灯光模式

1.当我们勾选了Realtime GlobalIllumnation ,意味着场景里所有的灯光都会产生间接照明,Unity每一帧都会去计算实时灯光,如果没有灯光也会预计算,非常消耗性能

讲解Mixed灯光模式(包含三种算法的区别)

2.在运行期间可以计算混合光的某些属性,但只能在很强的限制范围内计算。一些混合光是预先计算的。

Baked Indirect:会实时显示直接光照,但是间接光照是烘焙到贴图中,它会预计算产生一个文件存放在硬盘中,对性能优化非常大,并且只能去烘焙静态的物体,(将物体的static勾选上)

shadowmask:除了计算间接光照,还会产生阴影,会叠加阴影的信息烘焙到贴图里

Subtractive:经常会和Light中Mode的Backed的模式相结合,会预先计算直接光照和间接光照,针对于静态物体,并存储在贴图中。删除灯光无影响,因为已经预先计算好了

unity 加载完场景继续加载场景中的物体_Unity光照渲染原理相关推荐

  1. google android广告异步加载,javascript 广告后加载,加载完页面再加载广告

    先加载完页面再加载广告的原理: 网页打开的顺序都是按页面从上到下的顺序加载完成的,所以要想使广告不影响页面打开速度,就要等页面全部打开完成后,再加载JS代码.等页面加载完再加载广告其实就是将广告的 J ...

  2. Unity 场景异步加载(加载界面的实现)

    前言: 玩游戏最讨厌的是什么呢?当然是游戏加载界面啦 但是你知道吗,加载界面在游戏制作中是不可或缺的,它可以使我们的场景完全加载完毕后再进入游戏,确保用户不会出现加载卡顿的情况. 如何实现一个简易的加 ...

  3. Unity 多场景/大场景加载解决方法

    Unity 多场景/大场景加载解决方法 文章目录 Unity 多场景/大场景加载解决方法 前言 一.通过距离判断实现加载场景 1.1.原理: 1.2.范围检测 1.3.方法弊端 二.通过触发检测实现加 ...

  4. 【Unity】场景异步加载、卸载

    场景异步加载.卸载: using System.Collections; using System.Collections.Generic; using UnityEngine; using Unit ...

  5. sceneManager.loadscene加载场景时不会主动去加载场景的依赖包,要手动加载或添加场景到build setting列表中...

    sceneManager.loadscene加载场景时不会主动去加载场景的依赖包,要手动加载或添加场景到build setting列表中 假设有一场景1001.unity,,manifest文件如下: ...

  6. Unity实现扇形Slider进度条加载功能

    Unity实现扇形Slider进度条加载功能 前言 在实际的开发项目中,再跳转场景的时候可以加一个进度条显示的功能,这样在跳转场景的时候就不会显得很突兀.在进度条的实现方式中,有很多的方式,例如Uni ...

  7. iOS开发小技巧--textField成为密码框,view加载完后textField获取焦点

    文本框安全输入:Secure Text Entry(安全文本输入) view加载完后textField获取焦点的正确做法

  8. @PropertySource读取外部配置文件中的k-v保存到运行的环境变量中,加载完微博的配置文件以后使用${}取配置文件中的键值

    @PropertySource读取外部配置文件中的k-v保存到运行的环境变量中,加载完微博的配置文件以后使用${}取配置文件中的键值 该注解value={},可以使用String数组形式,读取多个配置 ...

  9. 解决Vue刷新一瞬间出现样式未加载完或者出现Vue代码问题

    解决Vue刷新一瞬间出现样式未加载完或者出现Vue代码问题 参考文章: (1)解决Vue刷新一瞬间出现样式未加载完或者出现Vue代码问题 (2)https://www.cnblogs.com/jiah ...

最新文章

  1. Nat.Commun. | AI指导发现炎症性肠病保护治疗方法
  2. 练习5.1更新——四则运算 测试与封装
  3. Epic苹果诉讼案,却把索尼微软Steam都拉下水,网友忙吃瓜
  4. AppWidgetServiceImpl: Widget Error: widget.host.callbacks is null
  5. 2019年最后的一天_2019最后一天的说说 2019最后一条朋友圈再见2019
  6. [置顶] Oracle学习经验谈
  7. json mysql 字段 默认值_MySQL JSON 类型数据操作
  8. java万年历项目百度云_Java开发万年历
  9. etimedout 运行_googleapis 谷歌统计 nodejs 遇到 ECONNRESET和 ETIMEDOUT
  10. 20155313 2016-2017-2《Java程序设计》课程总结
  11. Leaflet地图 -- 绘制台风风圈
  12. 大漠插件后台绑定方式: 逆水寒
  13. 学习笔记-----浅谈汇编指令CMP运行机制
  14. Exchange 2013 配置MAPI OVER HTTP
  15. 宾夕法尼亚大学计算机硕士专业排名,宾夕法尼亚大学计算机专业最新排名!
  16. 企业_商誉_管理_系统(调查需求)
  17. Android-skin-support换肤框架使用指南
  18. 这个技术的出现,可能会颠覆阿里云、AWS!
  19. matlab画阶次图,频谱分析阶次图
  20. Matlab曲线图导出eps数据量太大占用很多存储空间

热门文章

  1. 不能包含全角 正则_java常用正则表达式
  2. JVM内存分配与垃圾回收
  3. servlet ---- EL表达式
  4. vue ---- 监听器
  5. vue----sourceMap
  6. oracle unused 语法_Oracle教程之设置为unused 后如何恢复 ?
  7. 将springboot打包成的jar文件做成windows服务
  8. Android开发笔记(七)初识Drawable
  9. 解决:ngxin做http强制跳转https,接口的POST请求变成GET
  10. 一文看懂机器视觉工业相机与普通相机的区别