摘 ?要:現(xiàn)如今,虛擬現(xiàn)實(shí)(VR)技術(shù)在建筑表現(xiàn)領(lǐng)域中的優(yōu)勢(shì)越來(lái)越明顯。文章將虛擬現(xiàn)實(shí)技術(shù)與傳統(tǒng)渲染技術(shù)進(jìn)行了對(duì)比,強(qiáng)調(diào)了前者的交互性和沉浸式體驗(yàn)。使用了當(dāng)今較流行的VR制作技術(shù),在3ds Max中創(chuàng)建模型,并在Unity3D引擎中使用了Steam VR插件來(lái)編輯代碼,配合HTC VIVE硬件實(shí)現(xiàn)虛擬現(xiàn)實(shí)效果。體現(xiàn)了虛擬現(xiàn)實(shí)技術(shù)在建筑表現(xiàn)中的先進(jìn)性和實(shí)用性。
關(guān)鍵詞:3ds Max;Unity3D;虛擬現(xiàn)實(shí);Steam VR
中圖分類號(hào):TP391.9 ? ? ?文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2096-4706(2021)06-0109-03
Research on Virtual Reality Technology in Architectural Presentation
——Take Sanshui Campus of Guangzhou College of Technology and Business as an Example
HE Liuqing
(Guangzhou College of Technology and Business,F(xiàn)oshan ?528138,China)
Abstract:Nowadays,the advantages of virtual reality(VR)technology in the field of architectural presentation are becoming more and more obvious. This paper compares virtual reality technology with traditional rendering technology,emphasizing the interactive and immersive experience of the former. Using the more popular VR production technology,the model is created in 3ds Max,the Steam VR plug-in is used in Unity3D engine to edit the code,and the virtual reality effect is realized combined with HTC VIVE hardware. It embodies the progressiveness and practicality of virtual reality technology in architectural presentation.
Keywords:3ds Max;Unity3D;virtual reality;Steam VR
0 ?引 ?言
近幾年數(shù)字圖像技術(shù)飛速發(fā)展,令影視、游戲、虛擬現(xiàn)實(shí)的視覺(jué)效果都得到了大幅度的提升。虛擬現(xiàn)實(shí)基于GPU實(shí)時(shí)渲染技術(shù),能快速顯現(xiàn)高質(zhì)量圖像,并能與用戶產(chǎn)生互動(dòng),這是傳統(tǒng)CPU渲染無(wú)法比擬的。以3ds Max結(jié)合Unity3D引擎的流程制作建筑表現(xiàn)是當(dāng)下虛擬現(xiàn)實(shí)技術(shù)的一個(gè)發(fā)展方向,同時(shí)也使建筑表現(xiàn)在該技術(shù)下增強(qiáng)了視覺(jué)效果和互動(dòng)性。當(dāng)GPU技術(shù)還處于初期萌芽的年代,建筑表現(xiàn)主要靠電腦CPU逐幀渲染動(dòng)畫然后合成視頻。此方法具有一定的局限性,主要表現(xiàn)在視覺(jué)單一、無(wú)交互性、需要花費(fèi)大量時(shí)間渲染合成等方面,后期修改則需要重新渲染合成。這明顯增加了制作成本和制作時(shí)間,達(dá)不到現(xiàn)階段社會(huì)快速出項(xiàng)目的要求。3ds Max常規(guī)渲染每幀至少需要一分鐘,甚至更長(zhǎng)時(shí)間,按每秒25幀計(jì)算,合成視頻后每秒需要至少25分鐘的渲染時(shí)長(zhǎng),其中包含各色彩通道的提取。如果項(xiàng)目有改動(dòng),則需要重新渲染,耗費(fèi)大量的時(shí)間和費(fèi)用。不僅渲染耗費(fèi)時(shí)間,后期合成各通道和調(diào)色等也需花費(fèi)大量時(shí)間,設(shè)計(jì)師大部分時(shí)間都花費(fèi)在渲染和合成上,這顯然是一個(gè)線性不可逆流程。這明顯較難滿足當(dāng)今社會(huì)快節(jié)奏的要求,并且會(huì)大大增加制作成本,降低工作效率。本文從根本上舍棄傳統(tǒng)CPU渲染流程,采用Unity3D結(jié)合插件的方式來(lái)獲得更高效率的實(shí)時(shí)渲染效果,大大增加了工作效率與現(xiàn)場(chǎng)體驗(yàn)感。
1 ?傳統(tǒng)渲染技術(shù)與虛擬現(xiàn)實(shí)技術(shù)對(duì)比
隨著Unity3D游戲引擎的發(fā)展,它不僅可以制作高質(zhì)量游戲,也可以制作影視特效,包括建筑表現(xiàn)方向。虛擬現(xiàn)實(shí)技術(shù)比傳統(tǒng)渲染技術(shù)有著更大的優(yōu)勢(shì),如交互性強(qiáng)、成本低、制作周期短、所見(jiàn)即所得等。Unity3D本身并不能生產(chǎn)模型和貼圖之類的資產(chǎn),它的實(shí)際作用是對(duì)項(xiàng)目資產(chǎn)進(jìn)行整合分配,創(chuàng)建材質(zhì)、燈光、輸出產(chǎn)品。其中所見(jiàn)即所得的功能令設(shè)計(jì)師可以隨時(shí)修改場(chǎng)景資產(chǎn),并即刻得到最終效果,而且Unity3D中大量的模型庫(kù)能最大限度地減少模型資產(chǎn)的創(chuàng)建,節(jié)約了大量的時(shí)間成本和制作成本。Unity3D的最大特點(diǎn)是沉浸式體驗(yàn),能實(shí)現(xiàn)場(chǎng)景漫游并同時(shí)互動(dòng)。這種效果也只能通過(guò)實(shí)時(shí)渲染來(lái)實(shí)現(xiàn),常規(guī)渲染無(wú)法達(dá)到要求。對(duì)于客戶來(lái)說(shuō),戴上VR眼鏡能直接體驗(yàn)身臨其境的感覺(jué),可以從場(chǎng)景的任何一個(gè)位置和角度觀察整體效果,猶如進(jìn)入另一個(gè)真實(shí)世界。虛擬現(xiàn)實(shí)真實(shí)、直觀的表現(xiàn)方式令客戶和設(shè)計(jì)師進(jìn)行零距離交流,去除了兩者之間在交流和理解上的誤差,即時(shí)反饋并馬上作出修改[1]。
Unity3D能有這樣強(qiáng)大的優(yōu)勢(shì),取決于它使用了GPU顯卡結(jié)合游戲引擎的方式,即時(shí)渲染令它在游戲和虛擬現(xiàn)實(shí)中都立于不敗之地。Unity3D對(duì)比傳統(tǒng)渲染軟件有下列幾點(diǎn)優(yōu)勢(shì):
(1)Unity3D能實(shí)現(xiàn)實(shí)時(shí)渲染,無(wú)須等待即可見(jiàn)到最終結(jié)果,但Unity3D本身不生產(chǎn)模型和貼圖等資產(chǎn)。
(2)Unity3D兼容的平臺(tái)較多,選擇不同的輸出接口就能實(shí)現(xiàn),無(wú)須重新編碼。
(3)Unity3D本身?yè)碛袕?qiáng)大的材質(zhì)燈光,能更好地配合實(shí)時(shí)渲染流程。
(4)Unity3D擁有強(qiáng)大的筆刷散布系統(tǒng),對(duì)于同一對(duì)象散布占用較少資源,相比常規(guī)渲染軟件能更流暢地進(jìn)行操作。
2 ?建筑表現(xiàn)使用Unity3D虛擬現(xiàn)實(shí)技術(shù)的可行性分析
當(dāng)今市場(chǎng)的建筑表現(xiàn)對(duì)制作速度有較高要求,如使用傳統(tǒng)渲染會(huì)大大增加渲染時(shí)間和費(fèi)用成本,如轉(zhuǎn)用Unity3D渲染則能最大限度地降低渲染成本,并且所見(jiàn)即所得會(huì)加快后期修改工作的速度,提高效率。
但在項(xiàng)目中使用何種方案會(huì)更適合,這不僅僅是選擇軟件的問(wèn)題,還要視團(tuán)隊(duì)的總體軟件使用情況而定。如團(tuán)隊(duì)中大部分人都使用傳統(tǒng)渲染流程,只有極少數(shù)人使用Unity3D,則明顯應(yīng)選擇傳統(tǒng)渲染,這能確保能完成本次項(xiàng)目的所有環(huán)節(jié)并盡量少出錯(cuò)誤。分析團(tuán)隊(duì)自身情況,這對(duì)于項(xiàng)目以后的開展是非常重要的。
對(duì)于一個(gè)能熟練使用傳統(tǒng)渲染流程的團(tuán)隊(duì)而言,今后的項(xiàng)目是否還會(huì)繼續(xù)使用老舊方案,這是值得深思的問(wèn)題。學(xué)習(xí)并使用Unity3D渲染流程是未來(lái)的趨勢(shì),快節(jié)奏的都市工作對(duì)項(xiàng)目有越來(lái)越多的要求,所以傳統(tǒng)渲染流程在未來(lái)的工作中會(huì)減輕比重,Unity3D流程會(huì)取而代之,獲得不可估量的地位。Unity3D的學(xué)習(xí)成本較傳統(tǒng)渲染高一些,但當(dāng)其應(yīng)用在工作中時(shí),工作效率會(huì)得到極大的提升[2],而這也是未來(lái)工作流程中必不可少的軟件之一。所以使用Unity3D虛擬現(xiàn)實(shí)技術(shù)來(lái)制作建筑表現(xiàn),具有極高的可行性和實(shí)用價(jià)值。
3 ?在Unity3D中實(shí)現(xiàn)建筑表現(xiàn)
3.1 ?在Unity3D引擎中整合模型資產(chǎn)
Unity3D引擎是全球先進(jìn)的開放式實(shí)時(shí)渲染平臺(tái)之一。隨著版本的不斷迭代,它除了能制作游戲作品,還能為其他領(lǐng)域提供更多的創(chuàng)作空間。在建筑表現(xiàn)中,前期三維軟件首選3ds Max軟件,因?yàn)樗cAuto-CAD文件能較好地兼容,能制作出更精確的場(chǎng)景模型。而Auto-CAD是最常用的平面圖紙制作軟件,雖然它也有三維功能,但與3ds Max相比效果有不少差距。因此通常是在Auto-CAD中制作好地表圖紙文件,再導(dǎo)入3ds Max中進(jìn)行三維模型的創(chuàng)建和修改。然后把項(xiàng)目資產(chǎn)導(dǎo)入U(xiǎn)nity3D中進(jìn)行整合分配,實(shí)現(xiàn)虛擬現(xiàn)實(shí)的效果。整個(gè)流框架程如圖1所示。
建筑表現(xiàn)實(shí)現(xiàn)的首要條件是實(shí)時(shí)渲染,所見(jiàn)即所得。 Unity3D引擎結(jié)合軟硬件對(duì)虛擬環(huán)境進(jìn)行實(shí)時(shí)計(jì)算,為用戶帶來(lái)身臨其境的沉浸式感受,將藝術(shù)與技術(shù)完美地融合一起。用戶在使用過(guò)程中能直觀有效地觀察項(xiàng)目的各方面細(xì)節(jié),如對(duì)項(xiàng)目有修改要求則能以直觀的方式提出,最大程度地與項(xiàng)目組成員進(jìn)行溝通,減少溝通過(guò)程產(chǎn)生的不必要環(huán)節(jié)。
模型以學(xué)校圖書館為原型,包括外墻內(nèi)墻結(jié)構(gòu)、書架、書桌、座椅等模型及材質(zhì)貼圖。在3ds Max中制作完成后導(dǎo)出FBX文件,再把場(chǎng)景模型FBX文件導(dǎo)入U(xiǎn)nity3D中,調(diào)整相應(yīng)的模型大小[3]。模型場(chǎng)景全部在Unity3D引擎中正確顯示后,可對(duì)其材質(zhì)做適當(dāng)調(diào)整,如石材紋理和玻璃反射折射等,如圖2所示。
對(duì)于三維場(chǎng)景的優(yōu)化有兩點(diǎn):
(1)在3ds Max中忽略不明顯的細(xì)節(jié),同時(shí)對(duì)于主要部件模型的面數(shù)精簡(jiǎn)化。
(2)在3ds Max中不制作面數(shù)過(guò)多的植物模型,只制作一棵低面數(shù)的植物模型并導(dǎo)出FBX文件,在Unity3D中使用“預(yù)置”功能對(duì)該植物模型進(jìn)行克隆。這樣可以大大減少多邊形面數(shù)的實(shí)時(shí)計(jì)算量,從而加快場(chǎng)景的運(yùn)算速度,減少卡頓延遲現(xiàn)象。
3.2 ?SteamVR配合HTC VIVE設(shè)備進(jìn)行程序開發(fā)
SteamVR Plugin是使用Unity3D進(jìn)行HTC VIVE VR開發(fā)的必要工具,它以插件的形式在Unity3D中運(yùn)行。HTC VIVE是HTC公司開發(fā)的VR硬件套裝,包括了VR頭盔、VR手柄、VR基站定位器等設(shè)備,它能與SteamVR完美結(jié)合并展現(xiàn)VR的真實(shí)效果[4]。
我們?cè)陂_發(fā)VR代碼的過(guò)程中主要是針對(duì)SteamVR的C#代碼編寫,而SteamVR是Steam客戶端中為VR體驗(yàn)提供支持的運(yùn)行時(shí),當(dāng)Steam檢測(cè)到電腦上有VR硬件時(shí)就會(huì)自動(dòng)安裝SteamVR,也可以手動(dòng)安裝。
OpenVR不依賴特定硬件,它基于C++開發(fā)而成,是一套基礎(chǔ)且必要的API。而SteamVR是基于OpenVR驅(qū)動(dòng)API的封裝,負(fù)責(zé)調(diào)用OpenVR,從而為VIVE硬件提供信息和反饋。從圖3可以看出OpenVR Driver API是SteamVR的基礎(chǔ),后者是前者的衍生產(chǎn)品,我們使用SteamVR的過(guò)程大量地調(diào)用了OpenVR的接口,從而加快編程的速度[5]。
HTC VIVE硬件主要包括VR頭盔、VR手柄、基站定位跟蹤等。用戶將相應(yīng)的操作指令發(fā)送到PC端,比如行走、抓取、轉(zhuǎn)換視角等[6],SteamVR通過(guò)內(nèi)部運(yùn)算將結(jié)果以視覺(jué)形式反饋給用戶,這是一個(gè)實(shí)時(shí)跟蹤的過(guò)程,如圖4所示。
從圖4可以看出,用戶與PC端是通過(guò)VR硬件設(shè)備來(lái)實(shí)現(xiàn)實(shí)時(shí)無(wú)縫交互。當(dāng)我們?cè)谀P蛨?chǎng)景中進(jìn)行運(yùn)算時(shí),即可以實(shí)現(xiàn)校園建筑VR漫游的效果。
4 ?結(jié) ?論
本文對(duì)虛擬現(xiàn)實(shí)在建筑表現(xiàn)中的相關(guān)技術(shù)作了探討,分析了當(dāng)今SteamVR與HTC VIVE硬件相結(jié)合的有效方案,在此基礎(chǔ)上將進(jìn)行更深層次的研究。使用虛擬現(xiàn)實(shí)技術(shù)來(lái)實(shí)現(xiàn)建筑表現(xiàn)效果,無(wú)疑增強(qiáng)了視覺(jué)效果,同時(shí)令用戶有了沉浸感,比起2D畫面視覺(jué)效果更強(qiáng)。虛擬現(xiàn)實(shí)技術(shù)的不斷積累,同時(shí)也推動(dòng)了相關(guān)行業(yè)的發(fā)展,在建筑表現(xiàn)領(lǐng)域值得大力推廣。
參考文獻(xiàn):
[1] 趙俞凌,陳曉龍,姚遠(yuǎn).VR技術(shù)視域下高職虛擬混合學(xué)習(xí)系統(tǒng)類型與應(yīng)用研究 [J].職業(yè)技術(shù)教育,2020,41(32):62-65.
[2] 岳井峰.采用Unity3D引擎開發(fā)建筑類三維虛擬仿真實(shí)訓(xùn)系統(tǒng)研究 [J].中國(guó)管理信息化,2019,22(24):182-183.
[3] 顧鳳梅,李潔.基于Unity3D的AR學(xué)習(xí)資源系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) [J].工業(yè)和信息化教育,2020(2):91-94.
[4] 孫友昭,楊荃,王曉晨,等.軋制原理虛擬仿真實(shí)驗(yàn)系統(tǒng)設(shè)計(jì)與開發(fā) [J].實(shí)驗(yàn)技術(shù)與管理,2020,37(8):133-136.
[5] 張?jiān)剑湛?,徐?基于Unity3D的塔防類游戲的設(shè)計(jì)與實(shí)現(xiàn) [J].現(xiàn)代信息科技,2021,5(1):84-87.
[6] 葛巖,馮婉婷,劉紅巖.基于Unity3d的虛擬實(shí)驗(yàn)設(shè)計(jì)與開發(fā) [J].黑龍江科學(xué),2018,9(24):30-31.
作者簡(jiǎn)介:何柳青(1976.12—),男,漢族,廣西北海人,講師,碩士,研究方向:計(jì)算機(jī)應(yīng)用。