核心概念
本文提出了一種基於學習的淺層神經網路方法,用於表示動畫角色皮膚表面的有向距離函數 (SDF),從而實現高效且準確的實時布料模擬中的碰撞檢測。
摘要
文獻類型
本文件為研究論文,詳細介紹了一種用於動畫角色皮膚表面有向距離函數 (SDF) 的新穎表示方法。
研究目標
- 開發一種基於學習的方法,用於表示動畫角色皮膚表面的 SDF,以實現實時布料模擬中的高效且準確的碰撞檢測。
- 克服傳統基於網格的 SDF 表示法的限制,例如高計算成本和存儲需求。
方法
- 將角色模型分解為與各個關節關聯的子區域。
- 訓練淺層神經網路 (Shallow Neural Networks),以表示每個子區域的局部皮膚變形,從而產生特定於關節的 SDF。
- 引入一個布林變數,以指示查詢點是與真實邊界還是內部邊界相關聯,從而解決多個關節區域重疊的問題。
- 開發一種混合機制,將特定於關節的 SDF 組合成一個代表整個角色皮膚的 SDF。
主要發現
- 與基於深度神經網路的 SDF (DeepSDFs) 相比,淺層神經網路在保持準確性的同時顯著提高了計算效率。
- 特定於關節的 SDF 與布林變數的組合可以有效地表示整個角色皮膚的 SDF。
- 該方法在實時布料模擬中表現出良好的效果,碰撞檢測時間佔總模擬時間的 10% 到 25%。
主要結論
- 基於學習的淺層神經網路為動畫角色皮膚表面的 SDF 提供了一種高效且準確的表示方法。
- 該方法在計算成本和存儲需求方面優於傳統的基於網格的 SDF 表示法。
- 該方法有可能徹底改變實時布料模擬中的碰撞檢測,特別是在處理複雜角色動畫時。
重點
- 該研究解決了實時布料模擬中的一個關鍵挑戰,即高效且準確的碰撞檢測。
- 淺層神經網路的使用在速度和準確性之間取得了平衡。
- 特定於關節的 SDF 和布林變數的創新組合有效地處理了角色模型的複雜性。
局限性和未來研究方向
- 未來的工作可以探索新的網路架構,以進一步提高給定性能約束下的準確性。
- 該方法可以進行調整,以更好地處理關節自由度導致皮膚顯著變形的情況。
統計資料
碰撞檢測佔總模擬時間的 10% 到 25%。
訓練數據集是通過在規則網格上生成 SDF 值來創建的,網格大小為 100 x 100 x 100。
訓練過程中使用了修正後的夾緊損失函數,夾緊值為網格邊長的 0.2 倍。
訓練在單個 NVIDIA RTX A6000 GPU 上進行,記憶體為 48GB,使用 3GB 的共享記憶體。
訓練使用了反向傳播和 ADAM 優化器,學習率為 0.001,訓練週期為 100K。
訓練時間約為 4 小時(100K 個週期)。
該方法在具有 4-6K 個粒子的服裝網格上實現了實時性能。