09.VRay的分布式渲染
2020-07-21 13:15:51
供稿:網友
1.1. 什么是分布式渲染(Distributed Rendering)
分布式渲染是一種能夠把單幀圖像的渲染分布到多臺計算機(或多個CPU)上渲染的一種網絡渲染技術。有許多方法可以實現這種技術,主要的思路是把單幀劃分成不同的區域,由各個計算機或CPU各自單獨計算。常用的方法是把靜幀劃分成許多小區域(Buckets),每臺計算機都渲染一部分buckets,最后把這些buckets合并成一張大的圖像。VRay就是用的這種做法。(mental ray也是,好像mental ray做得更好一點,更穩定一點)
1.2. VRay的實現
Vray通過TCP/IP協議實現分布式渲染的網絡聯接,不需要任何附加的程序或目錄共享。分布式渲染的管理分成兩個部分:服務端和客戶端。
1.3. 客戶端
客戶端是指用戶現在正在使用的那臺計算機。它把單幀劃分成許多小的渲染區域(bucket)并把它傳給服務端去計算。整個渲染過程由客戶端來管理和組織。在客戶端計算機上,有一個用戶界面來管理網絡上的服務端——指定哪些服務器參與計算哪些不參與——并控制服務器端的狀態。每當一個渲染區域(bucket)計算完畢,客戶端上顯示出這塊bucket,并發送另一塊bucket給空下來的服務器計算(當然如果有的話)。
1.4. 服務端
服務端就是渲染服務器啦,顧名思義,就是網絡上提供計算服務的真正在干苦力的計算機們。它們渲染每個bucket,并計算結果送回客戶端。它們的狀態也由客戶端監控。
1.5. 界面說明
Distributed: 啟用分布式渲染。Settings...: 打開VRay Networking Settings框。
Search: 查找網絡上可用的VRay渲染服務器。約需2秒鐘。所有找到的服務器顯示在列表中。在服務器名上右鍵鼠標可以設置服務器狀態:Enable: 啟用,Disable: 禁用,Set priority: 設置響應優先級。
1.6. 開始使用分布式渲染
首先測試服務器,運行vrmaxspawn.exe:這將自動運行3dsmax為服務器狀態 。這種狀態下,3dsmax的標題會自動設置成 "$0_SRV_MAXSCENE.MAX"。一切正常的話,服務端就設好了。在每個渲染服務器上做以上的步驟。
現在測試客戶端。如通常一樣,打開max,打開要渲染的圖。。設置vray為當前渲染器,勾選distributed,按settings按鈕。你要確保你所在的局域網至少有一臺vray渲染服務器設好了,然后按search按鈕。大概需2秒鐘完成搜索。如果自動搜索沒有找全,可以用add server按鈕手動輸入IP地址添加。在服務器名上右鍵鼠標可以設置服務器狀態:Enable: 啟用,Disable: 禁用,Set priority: 設置響應優先級。啟用服務器。現在的VRay可以設置響應優先級。不要把它設成實時(Real-time)。如果設成實時的話,將在服務器上使用最高的CPU優先級而使VRay100%地占用服務器的CPU導致服務器上不能做其它的操作。渲染過程中可以一直開著這個VRay Networking Settings框,顯示各服務器的當前狀態:關閉、空閑、忙、失效。現在可以按Render開始渲染了!請不要在渲染過程中啟用過禁用服務器。如果你希望本機也參加運算,只要把本機也作為服務器即在本機也運行VRMaxSpawn大場景時這樣做很費內存,VRay的開發者承諾答應在1.1版的時候解決這個問題。如圖,兩臺電腦,其中一臺是服務端,另一臺既是服務端又是客戶端(所以圖面上可以看到有兩個max在運行)。客戶端渲染過程中截屏:
1.7. 特別注意(很重要): VeVB.COm收集整理
* 所有的服務端必需有當前文件所需要的全部插件和貼圖。所以,渲染前必須把當前場景中所用到的所有插件安裝到各臺渲染服務器上,把貼圖復制到各臺渲染服務器上MAX的貼圖搜索路徑下。
* 目前使用分布式渲染來渲染動畫是很低效的。最好只用來渲染靜態的圖像。動畫可以使用MAX的標準方法:Net Render.
* 渲染使用I-map的場景可能也不是很有效。因為在I-map部分的計算并不是分布式的。每臺渲染服務器都會獨立地計算I-map,這是重復計算,造成浪費。開發者將在以后試著改進這一點。我的辦法是選一臺最快的服務器做完計算后,存成I-map文件,放在網絡上,每臺電腦直接調用這個I-map。比如,I-map的路徑設成://192.168.0.2/share/1.vrmp。
* 不要開始渲染后馬上取消渲染。有時候會造成MAX死掉。
* 暫停按鈕無效,尚未實現。這個問題是MAX本身的問題,可能以后也不能解決。
* 3DSMAX3.X,3DSVIZ 3.X/4.X不支持VRay分布式渲染。
* 可能碰到的一個問題是使用D版的朋友運行不正常,這是因為破解不好。VRay 1.08.04p由roocoon破解的這個版本roocoon聲明已經完全破解了分布渲染部份