日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Occlusion(遮挡剔除)

發布時間:2025/4/16 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Occlusion(遮挡剔除) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Occlusion

1.視錐體剔除(Frustum Culling)
  根據攝像機的視見體的范圍對場景模型進行剔除操作,在視見體以外的物體不被渲染,但是在視見體中的物體會以離攝像機最遠的物體開始渲染,逐漸渲染靠近攝像機的物體。后渲染的物體會覆蓋先前渲染的物體。
錐體剔除只剔除攝像機視角范圍外的物體而對于被包含在視見體中的其他對象還是會進行渲染,即攝像機看不到的游戲對象也會進行渲染。
2.遮擋剔除(Occlusion Culling)
  剔除視見體以外的游戲對象,并且剔除視見體內被其他游戲對象所遮住的物體。

靜態物體的遮擋剔除:

  將需要自動遮擋的對象勾選 為Occluder Static/Occludee Static,然后在 Occlusion 中進行簡單的設置 Bake 即可。最后可以在 Visualization 模式下進行測試。

?  

Occluder Static: 需要進行遮擋剔除操作的對象勾選;

Occludee Static: 進行遮擋剔除操作的對象為透明或半透明,以及那些不太可能遮擋其他物體的小物體。即能被其他物體遮擋而本身卻不會遮擋到其他物體,這將有效減少計算量。

?Smallest Occluder: 該值越小,烘焙的效果越好越精確

?Smallest Hole: 最小的洞

?Backface Threshold:?

Visualization :形象化。在測遮擋剔除效果時選擇此項(需要選擇一個攝像機)

動態物體的遮擋剔除:

  1.為運動物體的運動范圍添加遮擋區域 ,即添加組件?Occlusion Area 進行設置。

  2.將其他靜態對象勾選為遮擋剔除靜態物體,然后在 Occlution 窗口中進行設置烘焙即可

入口遮擋:

  為了創建可實時開啟和關閉的遮擋。上面的靜態、動態物體遮擋為引擎自動遮擋,而入口遮擋為人工控制的遮擋(腳本控制)。如下圖:

  1.給門添加 Occlusion Portal 組件,不勾選 Open 屬性。即門后的物體不渲染。?

  2.Bake 其他靜態物體

  3.添加腳本控制

/*** * 項目: 遮擋剔除* * 功能: Occlusion Portal 的簡單應用* */ using System.Collections; using System.Collections.Generic; using UnityEngine;public class OcclusionPortalPractice : MonoBehaviour {private OcclusionPortal _OcclusionPortal; //遮擋入口private Renderer _Renderer; //渲染器private void Start(){_OcclusionPortal = GetComponent<OcclusionPortal>();_Renderer = GetComponent<Renderer>();}private void Update(){if (Input.GetKeyDown(KeyCode.A)){_OcclusionPortal.open = true; //渲染門后面的內容_Renderer.enabled = false; //不渲染門 }if (Input.GetKeyDown(KeyCode.D)){_OcclusionPortal.open = false; //不渲染門后面的內容_Renderer.enabled = true; //渲染門 }} }

?

  

?

轉載于:https://www.cnblogs.com/yx-xiansheng/p/8457037.html

總結

以上是生活随笔為你收集整理的Occlusion(遮挡剔除)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。