基於 WebGPU 的增強頂點塊下降法實作

基於 WebGPU 的增強頂點塊下降法實作

Hacker News·大約 8 小時前

本專案是一個基於 AVBD 解算器的實驗性 WebGPU 物理引擎原型,專注於剛體與軟體物理模擬。我實作了從碰撞檢測到速度重構的完整流程,這是一個遵循 2025 年相關研究論文結構的初步概念驗證。

背景

本文介紹了一個基於 WebGPU 實作的物理引擎專案,其核心採用了 Giles 等人在 2025 年發表的「擴增頂點塊下降法」(Augmented Vertex Block Descent, AVBD)求解器。該專案目前處於實驗性階段,旨在透過瀏覽器的高效能運算能力,實現複雜的剛體與軟體物理模擬,並完整重現了論文中從碰撞偵測、著色處理到對偶更新的運算管線。

社群觀點

在 Hacker News 的討論中,社群成員對於此 WebGPU 實作表現出高度興趣,特別是在效能表現與既有展示的對比上。有使用者指出,AVBD 論文官方網站其實也提供了一套 3D 演示網頁,但在實際體驗後,認為 Jure Triglav 所開發的這個 WebGPU 版本在流暢度上明顯優於官方版本。這引發了關於實作技術差異的討論,開發者本人也親自回應解釋了其中的關鍵原因。

開發者 Jure Triglav 澄清,官方研究頁面所提供的 3D 演示雖然精美,但其底層邏輯是基於 CPU 的序列運算,並未充分發揮現代硬體的並行處理潛力。相比之下,這個 WebGPU 實作將物理管線中的廣相偵測、窄相流形生成以及核心的 AVBD 疊代求解全部移至 GPU 執行。透過貪婪著色演算法,引擎能夠讓同色系的物體在 Primal Step 階段進行大規模並行運算,這正是 WebGPU 版本能提供更流暢互動體驗的核心技術優勢。

此外,討論也觸及了實作細節與論文理論的微小差異。目前的 WebGPU 實作在處理位置更新時,採用的是原位著色物體求解,而非論文中為了處理極少數同色衝突所建議的雙緩衝位置更新機制。這種在效能與理論嚴謹性之間的權衡,反映了實驗性專案在追求網頁端即時互動時的實務考量。雖然目前該專案僅支援 Chrome 瀏覽器且尚未模組化,但其作為 AVBD 演算法在 Web 端落地的先行嘗試,已成功展示了高效能物理模擬在瀏覽器環境中的潛力。

延伸閱讀

  • AVBD 官方研究頁面:由猶他大學圖形學小組維護,包含原始論文、研究背景以及 CPU 版本的演示。
https://github.com/jure/webphysics