图形渲染-Camera

Camera下的Clear Flags:Skybox,Don't Clear,Depth only(深度),Solid Color(固定颜色)

Culling Mask:渲染层

Viewport Rect:渲染位置

Projection:
Perspective 投影摄像机(Field of View正常人60)
Orthographic 正交摄像机(UI,可以用2d的表现3d的画面)
Clipping Planes表示可见的近与远的参数
多摄像机:

图形渲染-light&shadow

光照

Directional Light:方向光(太阳光)
Point Light:白炽灯
Spot Light:聚光灯
Area Light:一个面往四周照射(街灯)

阴影

Light:shadow caster&receiver
quality setting
接收阴影的物体:Plane,打开Receive Shadow
产生应用的物体

全局光照和lightmapping

Unity5中全局光照的构成:可实时更新的(lightmap(把全局光照预先计算存储下来)+light probe(表现被静态物体照射的动态物体)+reflection probe(动态高光泽物体对周围的反射)+可作为光源的自发光体)

如何做到实时更新?
1.只实时计算物体间的bounce light
2.静态物体间的bounce light可以在预处理阶段优化
3.被静态物体照射的动态物体,通过light probe搞定
4.被动态物体照射的动态物体不支持

什么是light mapping?

对一些静态物体和光预先计算存储,不必实时计算,这个过程叫做baking,baking的结果就是一张light mapping的贴图

Unity5实现全局光照的几种策略

Window->Lighting

离线

1.将light的baking设置为baked
2.标记static物体
3.light window里baked go的设置
4.关闭Precomputed Reatime GI

实时

1.将light的baking设置为realtime
2.标记static物体
3.开启Precomputed Realtime GI开启
4.关闭Baked GI

烘焙的GI+实时的局部光照

1.static物件 采用烘焙
2.非static物件采用实时的局部照亮
3.light调为mixed
4.开启baked gi关闭realtime gi

烘焙的GI+实时GI

效率很低,没什么好处
1.light设置为mixed
2.开启baked gi
3.开启realtime gi

Unity基础-图形渲染的更多相关文章

  1. unity 基础之InputManager

    unity  基础之InputManager 说一下unity中的InputManager,先截个图 其中Axes指的是有几个轴向!Size指的是有几个轴,改变Size可以添加或者减少轴! Name指 ...

  2. unity 基础学习 transform

    unity  基础学习   transform 1.unity采用的是右手坐标系,X轴右手为+,Y轴向上为+,Z轴朝里为+; 但是我们从3D MAX中导入模型之后,发现轴向并没有遵从这个原理, 其实是 ...

  3. Unity基础6 Shadow Map 阴影实现

    这篇实现来的有点墨迹,前前后后折腾零碎的时间折腾了半个月才才实现一个基本的shadow map流程,只能说是对原理理解更深刻一些,但离实际应用估计还需要做很多优化.这篇文章大致分析下shadow ma ...

  4. Unity 基础

    Unity 基础是unity入门的关键.他将讲解Unity的界面, 菜单项,使用资源,创设场景,并发布版本. 当你读完这段,你将理解unity是怎么工作的,如何有效地使用它,并且完成一个基本的游戏. ...

  5. NET笔记——IOC详解和Unity基础使用介绍

    说起IOC,可能很多初学者不知道是用来做什么的,今天正好有点时间,就来扫扫盲,顺便巩固下自己. IOC全称是Inversion Of Control,意为控制反转(这些自然百度也有),可什么是控制反转 ...

  6. IOC详解和Unity基础使用介绍

    说起IOC,可能很多初学者不知道是用来做什么的,今天正好有点时间,就来扫扫盲,顺便巩固下自己. IOC全称是Inversion Of Control,意为控制反转(这些自然百度也有),可什么是控制反转 ...

  7. unity基础命令

    获取所挂脚本元素的组件: rd = GetComponent<Rigidbody>(); 获取其他元素的组件: rd = GameObject.Find("Player" ...

  8. 【Unity Shader学习笔记】Unity基础纹理-法线贴图

    1 高度纹理 使用一张纹理改变物体表面法线,为模型提供更多细节. 有两种主要方法: 1.高度映射:使用一张高度纹理(height map)来模拟表面位移(displacement).得到一个修改后的法 ...

  9. Unity基础知识学习笔记二

    1,object Instantiate(object original,Vector3 position,Quaternion rotation)       克隆原始物体,并返回克隆物体.     ...

随机推荐

  1. Java 环境问题汇总

    准备java环境时,需要设置JAVA_HOME 和 Path , CLASSPATH 环境变量,它们可以是用户变量,也可以是系统变量. 注意: 系统变量的路径排在用户变量之前. 其中,Windows操 ...

  2. HDU-1845-Jimmy's Assignment

    链接:https://vjudge.net/problem/HDU-1845 题意: 给一个有向图,求最大匹配. 思路: 有相图的最大匹配,可以通过加上反向边, 求这个无向图的最大匹配, 原图的最大匹 ...

  3. spring boot 使用hibernate validator 验证service

    不在controller中验证,而是在service中验证. spring boot 默认使用的就是hibernate validator,存在于pom的spring-boot-starter-web ...

  4. GUI的最终选择 Tkinter(九):事件

    Tkinter事件处理 Tkinter应用会花费大部分的时间在处理事件循环中(通过mainloop()方法进入),事件可以是触发的鼠标,键盘的操作,管理窗口触发的重绘事件(在多数情况下都是有用户间接引 ...

  5. NET Core 事件总线

    NET Core 事件总线,分布式事务解决方案:CAP 背景 相信前面几篇关于微服务的文章也介绍了那么多了,在构建微服务的过程中确实需要这么一个东西,即便不是在构建微服务,那么在构建分布式应用的过程中 ...

  6. zuul prefix

    经过测试,书上应该是写错了,如果要全部的路由加前缀,需要将zuul.stripPrefix=true进行设置 而不是书上所说的false

  7. mui对话框、表单

    1.mui.alert() 普通提醒参数 1.message Type: String 提示对话框上显示的内容 2.title Type: String 提示对话框上显示的标题 3.btnValue ...

  8. Linux下使用crontab命令配置定时任务

    一.语法结构 crontab [-e [UserName]|-l [UserName]|-r [UserName]|-v [UserName]|File ] 说明 : crontab 是用来让使用者在 ...

  9. 一步一步教你玩转.NET Framework的配置文件app.config

    转自https://www.cnblogs.com/tonnie/archive/2010/12/17/appconfig.html 在一般的项目中,为了使你的代码更加灵活,更方便调整,减少不必要的h ...

  10. JavaScript_11_验证

    表单验证: JavaScript可用来在数据被送往服务器前对HTML表单中的输入数据进行验证 1. 是否填写了必填项目 2. 邮件地址是否合法 ... <form action="su ...