zoukankan      html  css  js  c++  java
  • Unity3D-游戏场景优化之遮挡剔除(Occlusion Culling)的使用

    在大型3D游戏场景中,如何优化游戏性能是非常重要的一步。一般遮挡剔除是非常常用的。接下来我们看看如何使用遮挡剔除。

    假设这是一个游戏场景。

    下面这是相机的视口,相机的视觉是看不到很大立方体后面的那些小的立方体。

    在运行游戏的过程中,我们为了提高游戏的性能,我们不希望渲染相机看不到的物体。

    接下来就使用遮挡剔除(Occlusion Culling) 来进行优化。

    1.首先将场景中的物体设置为静态

    2.选择Windows   -> Occlusion Culling 

    3.然后打开bake选项卡

    4.参数说明

    Smallest:可以被剔除的物体的最小尺寸,如果物体小于这个尺寸,即使被遮挡了也不会被剔除。

    Smallect Hole: 如果物体堆叠起来形成一个孔,或是这个物体本来就带孔,通过这个孔我们可以看到后面的物体,这个参数的作用就是当孔的大小小于这个参数值时就会被忽略这个孔的存在,那孔后的物体就会被剔除。

    Backface Threshold : 设置背景剔除的阈值。当值为100时就不剔除背景,当小于100时U3D对背景进行优化甚至去掉背景。

    5.将这三个值进行设置之后,点击Ocllusion选项卡右下方的bake按钮进行烘培。

    6.然后在场景视口中选择

    7.然后勾选这三个点

    8.我们就可以看到大的立方体后面的物体已经被剔除

    9.与原场景进行对比,场景中少了很多物体,那些物体时相机无法看到的地方,这样就达到了优化性能的目标。

    10.对了重要的一点,相机要在那个方框区域内,不然没有效果。

  • 相关阅读:
    CSS定位
    使用开源框架进行get,post提交
    使用httpclient框架分别用post,get方式提交
    C++ const_cast
    C++ 类继承 常量对象调用函数
    C++ 类继承 子类调用父类
    C++ explicit关键字
    C++ class入门
    C#检测耗时操作
    面向对象编程入门
  • 原文地址:https://www.cnblogs.com/spiderljx/p/11587029.html
Copyright © 2011-2022 走看看