剔除距離體積(Cull Distance Volume) 是非常有用的優(yōu)化工具,它定義繪制(顯現(xiàn))該體積中的Actor的距離。這些體積可存儲任意數(shù)量的“大小”和“距離”組合(稱為 剔除距離對)。這些剔除距離對會被映射到Actor(沿其最長有效維度)的邊界,然后指定給關(guān)卡中的該Actor實例。剔除距離體積(Cull Distance Volume)對于優(yōu)化包含精細內(nèi)部空間的大型室外關(guān)卡非常有用。當室內(nèi)空間小到可被視為不重要時,可以剔除它們。 設(shè)置和用法可通過編輯器中的 模式(Modes) 面板向關(guān)卡中添加剔除距離體積(Cull Distance Volume),并且你可以縮放它,以適應(yīng)關(guān)卡需求。 ![]() 選中體積之后,使用 細節(jié)(Details) 面板訪問 剔除距離(Cull Distance) 對數(shù)組。每個“剔除距離(CullDistance)”對都包含 大小(Size) 和 剔除距離(Cull Distance) 數(shù)值。單擊 加號(+ 號)可向數(shù)組元素列表底部添加新剔除距離(CullDistance)對。 ![]() 默認情況下會為體積添加兩個 剔除距離(CullDistance) 對;你可以將第一個剔除距離對作為要編輯的第一個條目,它的大小和距離都尚未設(shè)置,第二個剔除距離對使大于10000單位的對象免于被剔除,因為那些對象的距離為0。通過設(shè)置較大的剔除距離對,你可以使遠處的大型建筑或高山等對象免于被剔除。 插入、刪除和復(fù)制剔除距離對使用每個數(shù)組元素旁的下拉菜單可插入、刪除或復(fù)制剔除距離對元素。 ![]() § 插入(Insert) 會在選中的元素上方添加新剔除距離對。 § 刪除(Delete) 會從列表中刪除現(xiàn)有剔除距離對元素。 § 復(fù)制(Duplicate) 會將選中的剔除距離對復(fù)制到下面的新數(shù)組元素。 你可以根據(jù)需要擁有任意數(shù)量的剔除距離數(shù)組元素,其先后順序不會影響它們的有效性。 示例場景和設(shè)置本示例使用InfinityBlades Grasslands項目,我們設(shè)置了幾個剔除距離對,它們可從攝像機的位置剔除不同大小的對象。 此處使用的數(shù)值是極端示例,便于你快速理解剔除距離對對關(guān)卡中的Actor發(fā)揮的作用。添加更多對數(shù)值并且進行更多測試將有助于改善本示例中出現(xiàn)的“突然出現(xiàn)”問題。 我們將下列數(shù)值用于定義“剔除距離(Cull Distance)”和“大小(Size)”的演示。 ![]() § 該體積中大小最接近 200 單位的對象會在它們距攝像機 1000 單位或更遠時被從視野中剔除。 § 該體積中大小最接近 500 單位的對象會在它們距攝像機 2000 單位或更遠時被從視野中剔除。 § 該體積中大小最接近 1000 單位的對象將永不會被剔除。這可以確保尺寸極大的對象被視為無窮大,這意味著它們距攝像機的距離永不可能遠到應(yīng)將它們剔除的程度。 設(shè)置剔除距離對時,請牢記以下規(guī)則: § 剔除距離對數(shù)組非線性插值。 § 這意味著你無需使用虛擬對,在存在重疊的剔除距離對時,引擎將挑選最激進的設(shè)置(或大于0的最低設(shè)置)并將它指定給Actor。 § 你可以根據(jù)需要擁有任意數(shù)量的剔除距離對。 § 為了便于組織,最好使這些對具有一定的順序(例如從高到低),但并非必需。 § 添加新對時,請記住,你始終可在稍后使用 插入(Insert) 下拉菜單添加對。 § 剔除距離對將指定給邊界直徑與其大小最接近的Actor。你可以使用Actor的 當前最大繪制距離(Current Max Draw Distance) 了解它基于剔除距離對數(shù)值被指定到的緩存繪制距離組。 為了幫助你入門,我們在下圖中列出了一些推薦的對數(shù)值: ![]() 下列建議可幫助你實現(xiàn)有效的結(jié)果: § 使用單個剔除距離體積(Cull Distance Volume)覆蓋整個關(guān)卡。 § 包含可代表關(guān)卡中大部分Actor的多種剔除距離對。 § 對于體積中的區(qū)域,你可以使用額外的剔除距離體積(CullDistance Volume)實現(xiàn)對剔除的額外的更加激進的控制。 § 設(shè)置剔除距離對時,可先從較大尺寸和距離開始,以了解你希望使用的上限和下限。 § 請在關(guān)卡視口的“游戲(Game)”視圖下在關(guān)卡中四處移動,以查看對象是否存在任何可見的“突然出現(xiàn)”。 § 進行更改(可能需要在現(xiàn)有的剔除距離對間添加一些新剔除距離對)。選擇存在問題的Actor并使用其 緩存剔除距離(Cached Cull Distance) 了解部分Actor所屬的剔除距離對分組情況。 § 請記住,剔除距離對組僅在低于個體Actor的 最大繪制距離 時才會被使用。 § 如果某些Actor應(yīng)永不被剔除距離體積(Cull Distance Volume)剔除,請使用該Actor的“細節(jié)(Details)”面板并禁用 允許剔除距離體積(Allow Cull Distance Volume)。 § 請記住,如果需要為大量Actor禁用此選項,可以考慮使用最后一個剔除距離對作為“過大不應(yīng)剔除距離”數(shù)值(大小(Size) 的數(shù)值很大,剔除距離(Cull Distance) 為 0)。這可以防止高山或建筑物等非常大的對象被剔除。 |