模擬
在角色模型上生成並模擬服裝網格。 布料模擬通過模擬粒子之間的運動和約束,來創建逼真的服裝和布料效果。
該系統的主要特性包括:
- 無條件穩定性: 無論條件有多極端,模擬都能總是恢復到穩定的狀態。
- 多執行緒運行: 在獨立的線程中與動畫系統並行實時運行,以利用多核 CPU 的性能。
- 自定義曲線碰撞器: 幾乎可以完美地匹配彎曲的身體部位。
支援兩個獨立的布料層次,具有可配置的拓撲、錨點、材質和流體粒子效果。
性能指南
模擬器偏好更高且穩定的幀率。我們建議您在「顯示與 UI」設置中選擇一個合適的固定幀率,並在布料模擬的「計算」設置中選擇相應的幀率。 默認設置將模擬幀率設置為固定的 90。如果您的系統運行在 60 或 30,它仍然應該正常工作,只是會有一點慢動作效果。您可以增加子步數量來補償這一點。
碰撞器調整
布料模擬系統使用其專有的碰撞器模型,不與標準物理組件互動。默認設置是根據 XPS 模型調整的,應適用於大多數 DOA 模型。對於 PMX,身體比例變化很大,因此您可能需要微調碰撞器以適應模型。 首先開啟可視化,這樣您就可以看到碰撞器,然後進入每個部分來調整身體部位的形狀和大小。
您可以將碰撞器想像為兩端各有 2 個可調節平滑曲線、並連接這些球體的物體。您可以調整:
- 2 個球體的位置。
- 分別調整球體的半徑。
- 中間曲率的值(正值是凸的,負值是凹的)。
布料層次
布料 1 和 布料 2 各定義了一個具有獨立網格拓撲、錨點和材質的服裝。使用 重建網格 來在更改形狀參數後重新生成幾何體。預設包含裙子、上衣和繩索配置。
材質
每個布料層次都有一個 材質 面板,用於表面著色、紋理選擇和細節繪圖。支援透明渲染和與音頻反應的視覺化模式。
流體模擬
這是一個實驗性的粒子噴流系統,可以生成具有可配置生成位置、自動瞄準、內聚力、粘度和黏度的液體液滴。請參閱「流體」子面板了解詳細的粒子行為設置。
碰撞
幾何碰撞器 為布料創建 SDF(簽名距離場)身體膠囊形狀,用於碰撞檢測。網格碰撞器 從角色模型網格生成四面體碰撞器,可更準確地與任意幾何體、服裝配件或道具發生碰撞。
子組件
布料 1
配置一個程序化生成的布料網格。拓撲 選擇粒子網格佈局——自適應六邊形、 自適應矩形、水平/垂直佈局,或 繩索變體。內徑設置腰部開口大小。坡度控制裙擺角度(0 = 管狀,90 = 平面圓盤)。弧度塑造輪廓——正值用於氣球形,負值用於鐘形。長度設定服裝長度。
對於水平佈局,袖孔和 袖孔高度 開出開口。對於垂直佈局,後部長度和 側面長度獨立縮放網格,而 分割間隔 則在網格中創建間隙。水平和 垂直分辨率設置粒子間距。距離遵從性控制彈性和伸展程度。阻尼減少振盪。UV 映射選擇紋理投影模式。 粒子半徑設定碰撞尺寸。
錨點 (Anchor)
配置布料網格如何附著於角色模型的骨骼上。頂部錨點和 底部錨點 使用相對骨骼位置和旋轉來定義上下連接點。布料橫跨這兩個錨環之間,其中吸引強度控制粒子在模擬過程中遵循錨點骨骼的緊密程度。
粒子屬性 (Particle Properties)
包含用於 PMX 物理模式下的 XPBD 物理系統所需的粒子尺寸、質量、阻尼、重力、摩擦和碰撞層。
C1 材質
配置布料網格的表面外觀。支援實色紋理、細節圖和透明渲染。 音頻視覺化模式用響應頻率/節拍圖案取代表面設置,即時動畫材質屬性。
表面控制粗糙度和金屬度。紋理 從地圖預設或實色中選擇。 細節圖添加次級表面噪聲。透明 啟用 alpha 透明度混合以實現半透明服裝。
音頻視覺化 (Audio Visualization)
包含環形視覺化的佈局、顏色、紋理和音響反應設置。
環色 (Ring Color)
包含用於音響反應元素的基礎顏色和發光強度。 當啟用自動更新時,發光會與顏色相乘並隨著節拍動畫。
背景色 (Background Color)
包含用於音響反應元素的基礎顏色和發光強度。 當啟用自動更新時,發光會與顏色相乘並隨著節拍動畫。
前景色 (Foreground Color)
包含用於音響反應元素的基礎顏色和發光強度。 當啟用自動更新時,發光會與顏色相乘並隨著節拍動畫。
布料 2
配置一個程序化生成的布料網格。拓撲 選擇粒子網格佈局——自適應六邊形、 自適應矩形、水平/垂直佈局,或 繩索變體。內徑設置腰部開口大小。坡度控制裙擺角度(0 = 管狀,90 = 平面圓盤)。弧度塑造輪廓——正值用於氣球形,負值用於鐘形。長度設定服裝長度。
對於水平佈局,袖孔和 袖孔高度 開出開口。對於垂直佈局,後部長度和 側面長度獨立縮放網格,而 分割間隔 則在網格中創建間隙。水平和 垂直分辨率設置粒子間距。距離遵從性控制彈性和伸展程度。阻尼減少振盪。UV 映射選擇紋理投影模式。 粒子半徑設定碰撞尺寸。
錨點 (Anchor)
配置布料網格如何附著於角色模型的骨骼上。頂部錨點和 底部錨點 使用相對骨骼位置和旋轉來定義上下連接點。布料橫跨這兩個錨環之間,其中吸引強度控制粒子在模擬過程中遵循錨點骨骼的緊密程度。
粒子屬性 (Particle Properties)
包含用於 PMX 物理模式下的 XPBD 物理系統所需的粒子尺寸、質量、阻尼、重力、摩擦和碰撞層。
C2 材質
配置布料網格的表面外觀。支援實色紋理、細節圖和透明渲染。 音頻視覺化模式用響應頻率/節拍圖案取代表面設置,即時動畫材質屬性。
表面控制粗糙度和金屬度。紋理 從地圖預設或實色中選擇。 細節圖添加次級表面噪聲。透明 啟用 alpha 透明度混合以實現半透明服裝。
音頻視覺化 (Audio Visualization)
包含環形視覺化的佈局、顏色、紋理和音響反應設置。
環色 (Ring Color)
包含用於音響反應元素的基礎顏色和發光強度。 當啟用自動更新時,發光會與顏色相乘並隨著節拍動畫。
背景色 (Background Color)
包含用於音響反應元素的基礎顏色和發光強度。 當啟用自動更新時,發光會與顏色相乘並隨著節拍動畫。
前景色 (Foreground Color)
包含用於音響反應元素的基礎顏色和發光強度。 當啟用自動更新時,發光會與顏色相乘並隨著節拍動畫。
流體 (Fluid)
一個實驗性的基於粒子的流體模擬系統。 產生最多 1000 個粒子,具備可配置的物理特性,包括內聚力、粘度、重力和表面互動。粒子可以渲染為點雲或具有 PBR 材質屬性的縮放液滴。
生源 (Spawn)
控制粒子生成——固定位置、手/滑鼠瞄準或自動追蹤。配置速率、速度、分散度和壽命。
流體 (Fluid)
定義粒子交互物理:內聚力強度、粘度、黏附性和目標間距。預設包括水、高粘度流體和沙子般的顆粒行為。
渲染 (Render)
開關點雲與液滴網格渲染。液滴大小可以隨著局部流體密度進行縮放。材質屬性包括顏色、金屬度、光滑度、發光和透明度。
生源 (Spawn)
配置流體粒子生成的位置和方式。 支援三種生成模式:相對於角色的固定位置、VR/滑鼠手部控制和自動瞄準追蹤。
位置和 旋轉 設置固定的生成點。 生成半徑和 分散度 控制粒子散佈程度。生成速率設置每秒的粒子數量。速度控制初始速度。最大 TTL 是粒子在重產生之前的壽命。地面持續時間 (TTL on Floor) 是水窪存在的時間長度。 平滑過濾 (Smoothing) 抑制自動瞄準目標追蹤。
流體 (Fluid)
定義粒子交互物理。
粒子尺寸是鄰近粒子的靜止距離(單位:毫米)——這是基本的尺寸旋鈕。它驅動了靜止密度目標、身體碰撞半徑,以及(透過 核比率)SPH 核到達範圍。 核比率 (Kernel Ratio) 是 SPH 核半徑與粒子尺寸的倍數。標準 PBF 值為 2.0——提高此值可獲得更平滑/更慢的流體;降低此值則會使流體更尖銳/不穩定。
內聚力將粒子拉成流線。 粘度抵抗較厚流體的流動。 目標密度控制流體在靜止時希望達到的密度。較低 (< 1) = 更可壓縮 / 初始生成時推斥力更弱。較高 (> 1) = 更堅硬的流體。 壓力柔度 (Pressure Softness) 調節每個粒子的壓力校正——值越高,能抑制新生成的粒子重疊時發生的劇烈推開。如果粒子在生成時相互彈開,這是第一個需要調整的旋鈕。
預設:水(輕盈、內聚)、粘性(濃稠、黏附)、沙子(無內聚力、顆粒狀)。
光線步進表面 (Ray March Surface)
光線步進流體表面——一個平滑的代謝球等值面,在通過攝影機不透明場景時被照亮和折射。需要場景中存在 流體光線步進 自定義通道(注入點:於透明之前)。
渲染表面 在運行時啟用此通道。 顏色 是主體的液體色調;alpha 控制其與背後折射場景混合的比例(alpha=0 → 透明,alpha=1 → 不透明色調)。 鏡面功率/強度 (Specular Power / Strength) 決定高光的尺寸和亮度。 菲涅耳功率 (Fresnel Power) 描述了在掠射角時邊緣加亮或變不透明的強烈程度(值越低,邊緣越寬)。 折射 (Refraction) 是液體後方場景的螢幕空間位移。
幾何碰撞器 (Geometry Collider)
定義 SDF(簽名距離場)身體膠囊形狀,供布料和物理系統碰撞使用。每個身體部位(頭、脖子、胸部、肋骨、腰部、腹部、臀部、手臂、腿等)都是一個可配置的膠囊體,具有位置、半徑和曲線參數。
形狀會隨著角色模型變形而縮放,以確保不同身體類型之間正確的碰撞幾何體。可見 開關在場景中顯示碰撞器線框圖。按區域組織:頭部、身體、手臂和腿部。包含 NSFW 的建構還包括額外的孔洞碰撞器配置。
網格碰撞器 (Mesh Collider)
從角色模型蒙皮網格渲染器生成四面體碰撞幾何體。與 SDF 膠囊碰撞器不同,網格碰撞器能貼合任意的模型幾何體,可準確地與自定義服裝、配件或道具發生碰撞。
選擇單個網格將其啟用為碰撞器。每個網格都帶有一個 排除 面板,用於禁用特定骨骼貢獻碰撞表面。深度 (Depth) 控制碰撞殼體的偏移厚度。視覺化 (Visualize) 在場景中渲染生成的碰撞網格。