《戰神4》的風力&植被互動系統
《戰神4》中的風力以及植被(其實還有其他很多mesh)互動系統,對於渲染栩栩如生的世界,烘托戰鬥氣氛起到很好的作用。
戰神4在GDC19上的分享,一方面展現了3A且完備的品質,一方面也分享了非常系統化的方案,學習起來非常享受,:)
先看下風力的互動品質:
https://www.bilibili.com/video/av60091567
這個flowmap的雲也很酷
https://www.bilibili.com/video/av60092549
技術overall mindmap
風力表達
有一個wind volume的概念,存在3d貼圖中,力會擴散和消散,使用多張3d texture來擴散即可。
圖中頂端部分就是風力的視覺表達。
noise
好的noise對於風力表達至關重要,首先是大家比較常用的fractal noise function:
但是不同的風力和狀態,如何去混合不同的noise,gow的方法是:
logarithmic binning
按照log的方式分級noise,然後每一級的取樣是混合覆蓋的多張noise sample,
比如1.3到1.5變化的時候,變化的混合factor,也就是固定sample,變化factor,這樣能獲得一個穩定變化的noise。
另外就是noise loop
在loop的時候,使用blend的方式讓過渡smooth,並且因為是smooth的過渡,所以可以讓sample更加的random,這樣也避免了loop的情況。
mesh的互動引數和種類
這一塊具體做的時候,細節上難度還好,就是能恰到好處的歸納出需要的引數會是一個迭代較長時間的過程,這裡列下:
然後可互動的也包括fur,hair,鬍子;
布料嘗試了最後沒上(種種原因)。
mesh互動演算法
使用pivot based的做法:
在vertex color上存好要繞著那個pivot來做力的react
額外的可以定義mesh的物理屬性甚至一些collision資訊等等。
類似其實NaughtyDog的頭髮說的更加詳細一些。
植被的cluster cards
這裡其實已經超出本文講的風力互動了,不過作者也提了,確實不錯。
這裡我們可以看到中間的純3d模型和右邊的基於cards的做法品質上差不多,但是面數幾乎差兩個數量級。
這裡就是一套自己開發的工具,來生成這個cluster cards。
使用若干個plane,然後樹相當於壓扁投射到這個plane,然後給這個plane打分,如果它能capture到儘可能多的樹的部分,且樹的三角形扭曲變化的最小,那麼這就是一個好的plane,會被保留。
然後把樹往這個card上渲染就可以獲得texture。
黑邊處理
可以使用blur或者mip來擴充套件邊緣,放置sample貼圖時候因為使用linear filter而sample到黑邊。
gow的建議是使用mipmap資訊來擴充套件,速度上好很多。
[這裡補充評論區Avatar Ye提供八卦,ubisoft farcry製作中,植被的mipmap也是美術手改,來達到牛逼效果,(個人評價,的確遊戲開發裡蠻力也是一種巧)]
reference
Interactive Wind and Vegetation in‘God of War’
Wind Simulation in‘God of War’
作者:安柏霖
專欄地址:https://zhuanlan.zhihu.com/p/74570626
相關文章
- 人工製作 vs 系統自動化:《神祕海域4》 中的戰鬥AI平衡 解讀AI
- .NET 實現的互動式 OA 系統
- 真人大屏互動系統,打造數字互動新體驗!
- 風力發電電網系統的simulink建模與模擬
- 基於php的教學互動網站系統PHP網站
- JVM是怎麼和作業系統互動的?JVM作業系統
- 互動投影系統應用的優勢有哪些?
- Java和作業系統互動細節Java作業系統
- Java 和作業系統互動細節Java作業系統
- 地面互動投影系統原理是什麼?
- 地面互動投影系統有哪些優勢?
- Go語言互動執行系統命令Go
- Owlchemy實戰分享:三個擴大環境互動、角色和系統方面的案例
- Java 與底層作業系統的互動細節Java作業系統
- 致廣大、盡精微,曙光問道算力服務“神經系統”
- 看準這4點!選擇最適合企業的內外網檔案互動系統
- 水下水生植被迴歸是切薩皮克灣生態系統恢復的前哨
- 實戰Memcached快取系統(4)Memcached的CAS協議快取協議
- 頂級玩法設計師GDC分享:《戰神》如何做出最優秀的戰鬥系統
- 動力傳動系統模擬測試解決方案
- 物體識別互動系統的特點及優勢
- 區塊鏈系統可以實現資料的互動需求區塊鏈
- 直播系統中可以具備哪些互動性功能?
- .NET App 與Windows系統媒體控制(SMTC)互動APPWindows
- Redis資料庫4:Go與Redis的互動Redis資料庫Go
- 網路動力學與幾何(上):集智-凱風研讀營預讀班4
- 用.NET完成Lotus與異質系統的資料互動 (轉)
- 自動系統的發展面臨哪些挑戰?
- WebView與APP互動實戰記錄WebViewAPP
- CSS-實戰-互動式圖片CSS
- 基於 HTML5 + WebGL 的 3D 風力發電場視覺化系統HTMLWeb3D視覺化
- JavaScript神一樣的變數系統JavaScript變數
- 酷雲互動:2019年4月智慧電視全場景月度風向標
- 《戰雙帕彌什》戰鬥系統解析:適合手機的動作遊戲遊戲
- php移動智慧商城系統原始碼!實力派!PHP原始碼
- 新風口還是偽需求?詳解互動劇的前世今生
- 資訊系統的生命力
- 《Divinuet》的互動音樂系統 – 第 1 部分