灯光探针
之前的用那个属性让静态物体影响动态物体比较消耗性能
导入素材
image.png
打开sence
image.png
wasd可以移动小球
这个关掉
image.png
把灯光改为Mixed模式 然后出了小球其他都改为静态
这个改为Linear效果好
image.png
创建光照探针 每一个顶点小球就是灯光探针 会影响周围物体
image.png image.png
点击 然后就可以在Sence里面左键多选
不够的话可以Ctrl D复制
然后勾上这个 有的unity版本是另一个
image.png image.png image.png
这样静态物体也可以阴影影响动态物体 但是物体颜色的光好像不太明显 但是好像是比较消耗CPU性能 因为每个小球都在为周围环境取样
反射探针
是室内效果对象反射取样 会受到环境影响 而不是天空盒
新建一个材质 这两个拉满 拖给小球
image.png
创建反射探针
image.png
类似于一个全景摄像机
黄色的是区域 出去了就没效果了
image.png image.png
然后小球反射了天空盒 还有两个物体
但是移动位置反射位置不会变化
找到反射探针 改变这个是实时反射每一帧更新
image.png image.png
然后这个黑的是什么
就是小球自己 可以设置层
image.png image.png
把小球改为这一层 然后把反射探针照射的层去掉就行了
image.png
然后就OK了
image.png
然后把反射探针当成小球子节点
image.png
image.png
这样就和小球贴在一起了 可以带着走
这个是时间切片 第一个9帧 第二个14帧 第三个每帧 更新率
image.png
这个就是多个反射探针 优先级
image.png
把反射探针设置为baked
image.png
烘焙时可以分开烘焙反射探针 还是烘焙贴图
image.png
然后反射的东西会被烘焙储存
就是场景名下的文件夹的这个
image.png
自发光材质
俩素材拖到unity
image.png
这个模型记得打钩
image.png
做成这样的场景 右边贴上材质
image.png
材质勾上自发光 然后拖到1以上出现HDR这样可以让发光更强
image.png
然后把物体都勾上静态 image.png
把灯关了就比较高大上
image.png
Unity官方屏幕处理效果Post
导入
image.png
image.png
打开这个场景
image.png
Lighting面板下面雾去掉 之后再说
image.png
相机挂上这个脚本
image.png
创建拖进去
image.png
这就是设置面板
image.png
焦距调0.1
image.png
运动模糊 运行时
image.png
调整颜色纠正 突然变天
image.png
User Lut 就是颜色修正 是把所有颜色偏向这个图的颜色 需要特殊的图
需要用到PS 把图片设置好颜色 然后把色阶复制到这个图上 在用这个图就能和之前P的图片一样的效果了
image.png这个是色差
image.png
是配合这个一起使用 有一种镜头光晕的感觉
image.png image.png
image.png
这样被攻击 还有睁眼效果
这个是噪点
image.png
那种老电视机的感觉吧
image.png
相机的渲染路径
image.pngLegcay Vertex Lit 最多到顶点级别 不支持实时阴影
用于旧机器 速度快
Deferred 延时渲染 支持多盏灯
Foward前向渲染 支持抗锯齿 多灯光就会卡
image.png
选择这个
然后打开之前的Post
image.png
配合实现这个效果
然后创建一个cube 附上材质 然后把光滑程度拉满
image.png image.png
然后就Cube就有反射草的效果
雾
打开Lighting面板
image.png
mode改成线性
image.png这个雾开始到结束效果的距离
image.png
比较真实
批处理
一般玩游戏我们都看FPS 卡不卡
image.png
现在主要看这两个
image.png image.png
之前的drawCall整合到Batches批处理里
批处理
在屏幕上渲染物体,引擎需要发出一个绘制调用来访问图形API。每个绘制的调用都要进行大量的工作来访问图形API,从而导致了CPU方面显著的性能开销
Unity在运行时可以将一些物体进行合并,从而用一个绘制调用来渲染他们。这叫批处理。Unity批处理的越多渲染性能越好
材质
相同材质物体可以批处理
如果2个材质纹理不同 可以纹理合并 两张纹理合成一个大的纹理
打开之前的一个Demo
image.png
Batches比较高
image.png
动态批处理
如果物体有相同材质,Unity会自动对物体进行批处理
但是需要在每个顶点上进行一定开销,仅支持小于900顶点的网格物体
静态批处理
就是把物体Static打钩 没有大小网格限制
静态批处理 往往比动态批处理更有效
需要在PlayerSttings里Other Settings勾选
image.png image.png
还有减少顶点数 找一些插件 或者让美工处理一下 还有用遮挡剔除
项目源码地址
https://github.com/1004019267/LightingSystem/tree/master
网友评论