Unity基础-图形渲染

图形渲染-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

posted @ 2019-05-07 19:01  cicarius  阅读(897)  评论(0编辑  收藏  举报