00:00 / 00:00

Persona

特效

特效用於對最終渲染畫面進行後製處理。每個特效在 圖層 清單上方的場景效果群組中佔據獨立項目:可從素材庫的場景效果分類中新增,透過眼睛圖示切換啟用狀態,選取後即可在清單下方調整參數。未新增的特效不會在清單中顯示,亦不會改變現有場景的畫面。

作用於整幅畫面、獨立於單項特效的全域顯示參數(色調映射、曝光與 LUT)位於舞台詳細資訊面板中環境區塊的 畫面色調 區域。

每個特效設定均綁定至具體 場景,因此不同的場景可讓同一個虛擬形象呈現完全不同的視覺風格。

支援的場景

特效管線運行於 3D 舞台渲染流程中。場景中只要包含任意圖層(模型如 Live2D 或 VRM 虛擬形象、3D 物件,或 2D 影像、影片、網頁與文字),或已載入 環境 場景模型,即可新增特效,畫面色調設定項目也會隨之顯示。僅包含 2D 物件的場景中,環境區塊只顯示畫面色調,相機、燈光等 3D 設定項目保持隱藏。

僅當場景完全為空(既無圖層也無環境場景模型)時,素材庫中的場景效果分類才會被停用並提示原因。

特效鏈

風格化

以下特效同樣在後製處理鏈中運作,但會重塑畫面的像素形態,常用於動作強調、轉場或特定風格化表達:

場景特效與圖層特效

特效系統支援在兩個不同層級運作:本頁說明的場景特效作用於最終合成後的整幅畫面;而圖層特效則直接掛載到具體的模型或物件上,在圖層併入主渲染管線之前獨立執行(例如單獨模糊背景或為特定道具調色)。

全套 24 項著色器特效中,有 13 項支援作為圖層特效使用。關於支援的特效清單、設定方式與適用對象,請參閱 圖層特效。

畫面色調

畫面色調設定位於環境區塊末尾,用於控制全域顯示參數。以下項目不作為獨立圖層新增:

項目說明
色調映射最終顯示變換,詳見 色調映射與曝光
曝光作用於顯示變換之前的整體畫面亮度增益
選擇 LUT…載入 調色查找表;選取後提供對應的混合強度滑桿

渲染順序

特效的處理順序在管線中固定,無法透過拖曳或重新排列圖層順序來調整。當同時啟用多個特效時,各階段將按固定次序依序處理前一階段的輸出結果:

  1. 景深:排在最前,是內建管線中唯一依賴場景深度緩衝(Depth Buffer)的階段。
  2. Live2D 圖層(以及 2D 空間內的圖片與影片):排在景深之後(2D 平面素材不具備深度資訊),但排在所有色彩階段之前,以確保 2D 與 3D 虛擬形象在後續流程中獲得統一的調色處理。
  3. 邊緣光 → 輪廓描邊 → 陰影:基於輪廓剪影的階段組合。該順序確保邊緣光侷限於描邊內側,且陰影能夠同時投射描邊與邊緣光所構成的複合輪廓。
  4. 魚眼 → 色差:魚眼彎曲此前的全部畫面,色差及之後的階段保持與螢幕對齊。
  5. 泛光 → 擴散 → 素描
  6. 調色階段:LUT → 色彩調整 → 色階 → 色輪 → 色相偏移 → 選擇顏色
  7. 漸層:緊隨調色階段之後,避免漸層疊加層被調色濾鏡二次著色。
  8. 模糊:位於調色之後,直接對已完成色彩調整的畫面進行整體虛化。
  9. 光暈:位於模糊之後,防止光暈效果被模糊演算法弱化。
  10. 像素化 與 亞空間干擾™:對畫面進行網格像素化或訊號故障撕裂。
  11. 雨滴:模擬前景玻璃上的雨滴折射效果。
  12. 底片顆粒 與 暗角:模擬鏡頭表面的雜訊與邊角失光,位於畫面最外層。
  13. 編輯器介面元件(置於所有渲染畫面之上)。

色調映射與曝光不屬於上述特效階段,它們作為顯示變換(Display Transform),在畫面輸出至螢幕時作用於最終成像。

雨 與 雪 亦不屬於後製處理階段,而是場景中實際存在的 3D 粒子幾何體。它們在後製管線開始前已完成幾何繪製,因此上述所有後製階段均會對其產生影響。

圖層特效不參與全域特效鏈的執行,它們在所屬圖層合併入場景之前已在局部渲染階段完成處理。

效能開銷

每個啟用的後製特效都會增加一定的畫面處理開銷。可以在設定中權衡畫面畫質與渲染影格率:

  • 渲染解析度:控制整個 3D 舞台渲染的目標畫布尺寸;降低解析度可成比例降低所有全螢幕特效的計算開銷。
  • 特效品質:控制後製特效的消除鋸齒與取樣精度。

當所有特效均處於關閉狀態時,Persona 將完全略過後製渲染管線,直接輸出至主畫布,未啟用特效的場景不會產生這部分效能開銷。

外掛 API

上述所有設定項目均為 SceneEffects 物件的具體欄位,可透過 scene.patch 進行修改,並透過 scene.changed 事件監聽讀取。其資料結構採用扁平設計(每個特效對應單一獨立索引鍵名稱,不包含多層巢狀分組),便於用戶端以通用方式巡覽整份特效註冊表。詳見 SDK 參考。

特效是否開啟,與它是否出現在場景效果清單中,是兩個獨立的狀態:

  • enabled:特效目前是否開啟。
  • environment.effectLayers:內建特效索引鍵名稱陣列,決定哪些特效在清單中佔有項目。

透過 patch 啟用某個特效時,其索引鍵名稱會自動追加至 effectLayers,開發者無需兩處都寫入。

無論從控制面板、自動化 還是 API patch 開關特效,畫面都會在 0.4 秒內平滑淡入淡出,避免視覺突變;自動化修改的參數數值與色彩也會在同樣的 0.4 秒內平滑過渡。

圖層特效遵循完全相同的資料結構,但直接掛載於圖層物件內部:每個模型與物件均包含獨立的 effects 與 effectLayers 屬性,欄位命名與場景級特效完全一致。

最後更新於 2026年11月3日

Tech otakus destroy the world