美文网首页unity
Unity光照渲染(二)

Unity光照渲染(二)

作者: 罗卡恩 | 来源:发表于2019-05-10 13:42 被阅读15次

    灯光探针

    之前的用那个属性让静态物体影响动态物体比较消耗性能
    导入素材


    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.png

    Legcay 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

    相关文章

      网友评论

        本文标题:Unity光照渲染(二)

        本文链接:https://www.haomeiwen.com/subject/tyrooqtx.html