999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Unity3D 的樣板房虛擬現(xiàn)實(shí)漫游

2019-10-15 07:17:52米丹王琴王春潔
現(xiàn)代計(jì)算機(jī) 2019年24期
關(guān)鍵詞:按鈕用戶功能

米丹,王琴,王春潔

(四川大學(xué)錦城學(xué)院,成都611731)

0 引言

近年來(lái),科技的飛速發(fā)展同時(shí)也使得虛擬現(xiàn)實(shí)技術(shù)不斷發(fā)展,其科技性、藝術(shù)性以及真實(shí)性引起了全球的關(guān)注,如今其應(yīng)用的范圍已經(jīng)極其廣泛。在房地產(chǎn)方面,虛擬現(xiàn)實(shí)技術(shù)也是將其作用與優(yōu)勢(shì)發(fā)揮得淋漓盡致,通過(guò)虛擬現(xiàn)實(shí)技術(shù)進(jìn)行樣板房的近似真實(shí)地漫游,使用戶切實(shí)地感受與體驗(yàn),并且虛擬現(xiàn)實(shí)技術(shù)模擬天氣、晝夜等特殊環(huán)境與情景,使場(chǎng)景更加真實(shí)。

本項(xiàng)目主要實(shí)現(xiàn)的有:

(1)第一人稱的漫游。在近乎真實(shí)的三維場(chǎng)景中,通過(guò)手柄控制進(jìn)行瞬移,達(dá)到前進(jìn)、轉(zhuǎn)身、后退等效果;同時(shí)頭戴式設(shè)備根據(jù)體驗(yàn)者轉(zhuǎn)身等,改變視角觀看內(nèi)容;

(2)人機(jī)交互設(shè)計(jì)。用戶在三維虛擬場(chǎng)景中通過(guò)瞬移進(jìn)行漫游,當(dāng)靠近交互對(duì)象,使用手柄扳機(jī)按下即可對(duì)物體進(jìn)行抓取查看;提供交互界面,通過(guò)手柄射線檢測(cè)顯示選中的logo,開(kāi)啟地板材質(zhì)切換功能,選擇材質(zhì)進(jìn)行切換;為場(chǎng)景添加粒子系統(tǒng)與晝夜系統(tǒng),模擬現(xiàn)實(shí)世界的下雪場(chǎng)景,以及體驗(yàn)晝夜變化。

(3)高清渲染導(dǎo)出。使用Lumion3D 可視化工具,將3DS Max 中的模型打包導(dǎo)入其中,通過(guò)使用快如閃電的GPU 渲染技術(shù),實(shí)時(shí)編輯3D 場(chǎng)景,并且最終使用內(nèi)置的視頻剪輯器創(chuàng)建視頻導(dǎo)出。

1 硬件與軟件工具介紹

(1)沉浸式虛擬現(xiàn)實(shí)頭戴設(shè)備HTC VIVE

HTC VIVE 是由HTC 與Valve 兩家公司聯(lián)合研發(fā)出的虛擬現(xiàn)實(shí)產(chǎn)品,分為三個(gè)部分達(dá)到給用戶沉浸式的體驗(yàn):1 個(gè)頭戴顯示器,2 個(gè)激光傳感定位器,2 個(gè)手柄控制器;其中頭戴顯示器通過(guò)左右眼觀看不同顯示屏蔽達(dá)到雙目3D 疊加后的視覺(jué)效果,采用OLED 液晶屏作為頭盔顯示器的屏幕,該屏幕雙眼合并的有效分辨率高達(dá)2100×1600 像素,其清晰的分辨率有效地降低了畫(huà)面的顆粒感,即使近視400 度左右的用戶在沒(méi)有佩戴眼鏡的情況下,也可以清楚地看到畫(huà)面中的細(xì)節(jié);2 個(gè)手柄有多個(gè)功能按鈕,通過(guò)判斷是否按下的狀態(tài)信息來(lái)實(shí)現(xiàn)豐富的交互功能;2 個(gè)定位系統(tǒng)采用的是Value 公司的Lighthouse 作為產(chǎn)品的特有定位系統(tǒng)控制器,Lighthouse 由兩個(gè)基站構(gòu)成,其主要原理是通過(guò)發(fā)射的激光和光敏傳感器之間的相互交互來(lái)確定物體的運(yùn)動(dòng)軌跡和位置,從而得到六自由度信息[1]。

(2)Unity3D 開(kāi)發(fā)引擎

本項(xiàng)目的實(shí)現(xiàn)是基于Unity3D 平臺(tái)完成的,Unity3D 是由Unity Technologies 開(kāi)發(fā)的一個(gè)讓玩家輕松創(chuàng)建諸如三維視頻游戲、建筑可視化、實(shí)時(shí)三維動(dòng)畫(huà)等類型互動(dòng)內(nèi)容的多平臺(tái)的綜合型游戲開(kāi)發(fā)工具,是一個(gè)全面整合的專業(yè)游戲引擎;其官方資源商店中的可用資源,包括插件以及粒子效果等都使開(kāi)發(fā)者能夠更好地對(duì)Unity3D 項(xiàng)目的制作進(jìn)行深刻的理解。

2 虛擬現(xiàn)實(shí)漫游設(shè)計(jì)與實(shí)現(xiàn)

2.1 三維虛擬場(chǎng)景搭建

前期根據(jù)實(shí)際情況,確立場(chǎng)景的面積大小,建筑風(fēng)格,交互功能設(shè)計(jì)想法以及視頻制作方法等,在收集相關(guān)樣板間資料以及學(xué)習(xí)制作模型后,創(chuàng)建島嶼以及透明落地窗式兩層小型建筑,豐富室內(nèi)家具以及擺件。建模常見(jiàn)軟件有多種,例如3DS Max、Maya 等,每個(gè)軟件有各自的優(yōu)點(diǎn)和缺點(diǎn),3DS Max 在建筑效果行業(yè)使用更加廣泛,操作流程相對(duì)熟練,所以在該項(xiàng)目中使用3DS Max 進(jìn)行建模。主要按照實(shí)際大小比例進(jìn)行模型創(chuàng)建,樣板間以簡(jiǎn)潔大方風(fēng)格呈現(xiàn),材質(zhì)主要以淺色木材、弱反光金屬以及乳膠漆等清新材質(zhì)為主。導(dǎo)出fbx格式文件效果如圖1 所示。

圖1 樣板間整體框架

2.2 HTC VIVE與Unity3D結(jié)合

HTC VIVE 手柄和頭戴顯示器將數(shù)據(jù)傳遞回電腦,結(jié)合HTC VIVE 基站定位技術(shù),使游戲中的場(chǎng)景和物體的運(yùn)動(dòng)軌跡和現(xiàn)實(shí)世界保持一致[2]。下載SteamVR與VRTK 插件資源包,將資源導(dǎo)入U(xiǎn)nity3D 中,在PC端上安裝Steam 平臺(tái),連接配置軟硬件。HTC VIVE 中定位器將根據(jù)用戶設(shè)置的碰撞邊界,當(dāng)用戶在現(xiàn)實(shí)世界中太靠近時(shí),對(duì)用戶進(jìn)行提示。最后,利用SteamVR與VRTK 提供的C#接口以及邏輯控制腳本即可實(shí)現(xiàn)部分基礎(chǔ)功能。

2.3 功能實(shí)現(xiàn)

用戶體驗(yàn)在三維虛擬場(chǎng)景中的移動(dòng)旋轉(zhuǎn),并且走進(jìn)對(duì)象進(jìn)行抓取查看。實(shí)現(xiàn)瞬移通過(guò)SteamVR 與VRTK 的集成:創(chuàng)建空物體命名為VRTK_SDKManager,用來(lái)管理任何進(jìn)行設(shè)置的VRTK_SDKSetup,VRTK_SDKManager 對(duì)象下創(chuàng)建兩個(gè)子物體命名為L(zhǎng)eftcontroller 和RightController,利用VRTK_Controller Events、VRTK_Pointer 以及VRTK_Straight Pointer Renderer 腳本對(duì)左右手柄進(jìn)行配置,最后空對(duì)象PlayArea通過(guò)VRTK_Basic_Teleport 實(shí)現(xiàn)瞬移區(qū)域的設(shè)置。

對(duì)物體的抓取在瞬移的功能基礎(chǔ)上實(shí)現(xiàn),在Left-Controller 和RightController 對(duì)象上添加VRTK_Interact Grab、VRTK_Interact Touch 以 及VRTK_Interact Use,表示此控制器可以進(jìn)行抓取、觸碰、使用。

(1)場(chǎng)景跳轉(zhuǎn)

該功能通過(guò)視線碰撞檢測(cè)實(shí)現(xiàn)。用戶進(jìn)入碰撞范圍內(nèi),并且當(dāng)視線看向凝視圖標(biāo)時(shí),開(kāi)始加載進(jìn)度條,若成功將進(jìn)行場(chǎng)景的切換。代碼思路流程圖如圖2所示。

圖2 凝視功能流程圖

(2)控制電視的播放,通過(guò)手柄發(fā)出射線,碰撞檢測(cè)電視屏幕上的“開(kāi)始播放”按鈕,進(jìn)行視頻播放,同樣可以進(jìn)行暫停以及繼續(xù)播放。利用C#腳本進(jìn)行控制,腳本中包含一系列的邏輯代碼以及調(diào)用操作。

借助Unity 的shader 中的Unlit/Texture,將ogv 格式的視頻綁定到此類shader 的材質(zhì)球上,通過(guò)腳本控制交互,再利用canvas 新建pannel 作為視頻的播放介質(zhì),將綁定了目標(biāo)視頻的材質(zhì)球綁定到image 屬性里,并且為了控制交互,再為其添加button 組件,當(dāng)button按鈕被觸發(fā)時(shí),綁定腳本中的自定義函數(shù),實(shí)現(xiàn)視頻的播放。

在自定義函數(shù)中,聲明了image 屬性的moviePanel視頻播放面板以及MovieTexture 格式的視頻,通過(guò)(MovieTexture)moviePanel.material.mianTexture 方 法,獲取材質(zhì)中綁定的目的視頻,存入變量,如果視頻正在播放,則將其暫停,如果處于暫停,則恢復(fù)播放。

(3)地板材質(zhì)切換,通過(guò)被選擇的按鈕進(jìn)行觸發(fā),手柄發(fā)出的射線點(diǎn)擊按鈕,出現(xiàn)材質(zhì)列表,用戶選擇材質(zhì),地板將切換到相應(yīng)的材質(zhì),腳本的控制和UI 界面同時(shí)設(shè)計(jì)實(shí)現(xiàn)該功能的效果。腳本主要代碼如下:

//創(chuàng)建材質(zhì)容器列表,材質(zhì)按鈕原型

public FloorMatData[]MatdataList;//材質(zhì)數(shù)據(jù)

private bool isOpen=false;//材質(zhì)列表是否打開(kāi)

public Transform matUIContainer;//材質(zhì)列表容器

public GameObject matButtonPrefab;//材質(zhì)按鈕原型

//初始化函數(shù):遍歷生成材質(zhì)列表容器中的材質(zhì),保證八種材質(zhì)都被生成且不重復(fù);

//設(shè)置logo 的動(dòng)態(tài)動(dòng)畫(huà),使用戶能夠更容易看到,提升體驗(yàn)感。在設(shè)置按鈕的動(dòng)畫(huà)功能中,泳道了DOTween 插件,其中Append 方法使按鈕在調(diào)用一次后產(chǎn)生補(bǔ)充動(dòng)畫(huà),參數(shù)t1,t2 的scale 不同,然后使用SetLoops(-1)進(jìn)行無(wú)線循環(huán),這樣使得Append(t1)和Append(t2)不斷循環(huán),按鈕大小交替,產(chǎn)生動(dòng)態(tài)跳動(dòng)效果;

Sequence seq=DOTween.Sequence();

Tween t1=matListButton.transform.DOScale(Vector.one*1.2f,0.5f);

Tween t2=matListButton.transform.DOScale(Vector.one,0.5f);

seq.Append(t1);

seq.Append(t2);

seq.SetLoops(-1);

//當(dāng)用戶點(diǎn)擊材質(zhì)列表中的材質(zhì)對(duì)地板進(jìn)行材質(zhì)切換時(shí),如果用戶所選是列表中的材質(zhì)并且當(dāng)前地板不是該材質(zhì),那么將該材質(zhì)通過(guò)獲取地板的Renderer 組件中的material 方法賦予地板;

private void onMatButtonClick(GameObject button)//材質(zhì)按鈕點(diǎn)擊處理函數(shù)

最后為logo 按鈕綁定Onclick 事件。

(4)晝夜系統(tǒng)

晝夜系統(tǒng)使用lens flare 組件調(diào)節(jié)太陽(yáng)光的顏色以及光暈,模擬現(xiàn)實(shí)世界太陽(yáng)光的變化。通過(guò)太陽(yáng)圍繞場(chǎng)景旋轉(zhuǎn)一周進(jìn)行日落日出的實(shí)現(xiàn)。核心代碼如下:

(5)粒子系統(tǒng)表示三維計(jì)算機(jī)圖形學(xué)中模擬一些特定的模糊現(xiàn)象的技術(shù),在三維空間渲染出來(lái)二維圖像,由粒子發(fā)射器、動(dòng)畫(huà)器以及渲染器三個(gè)獨(dú)立部分構(gòu)成。在本項(xiàng)目中使用粒子系統(tǒng)模擬雪景,產(chǎn)生真實(shí)而又帶有隨機(jī)性的效果。

(6)動(dòng)畫(huà)視頻渲染導(dǎo)出

最后,利用一款Lumion 渲染軟件將Unity 中整體場(chǎng)景導(dǎo)入其中,Lumion 是ACT-3D 公司推出可視化三維軟件,可用來(lái)制作影視動(dòng)畫(huà)和建筑效果圖。通過(guò)導(dǎo)入主流3D 制作軟件所創(chuàng)建的模型和材質(zhì)后,結(jié)合軟件自帶的場(chǎng)景模塊,創(chuàng)建立體逼真的自然景觀。優(yōu)秀的圖像質(zhì)量,高效的運(yùn)算渲染速度,實(shí)時(shí)3D 場(chǎng)景編輯功能,短時(shí)間內(nèi)就能創(chuàng)造出驚人的可視化3D 景觀效果,Lumion 現(xiàn)已成為影視后期制作的一大利器[3]。

選擇渲染風(fēng)格以及放置小擺件等,對(duì)場(chǎng)景進(jìn)行豐富,保證后期制作的美觀性。利用Lumion 導(dǎo)出視頻。

3 結(jié)語(yǔ)

本次項(xiàng)目通過(guò)對(duì)虛擬現(xiàn)實(shí)樣板間漫游的研究和實(shí)現(xiàn),利用3DS Max 進(jìn)行建模場(chǎng)景搭建,并在Unity3D 中結(jié)合虛擬現(xiàn)實(shí)技術(shù)實(shí)現(xiàn)樣板間的漫游以及一系列人機(jī)交互設(shè)計(jì)。構(gòu)建出的交互系統(tǒng)逼真,且在日后房地產(chǎn)以及虛擬現(xiàn)實(shí)技術(shù)的發(fā)展中比較具有意義。在本次設(shè)計(jì)中,系統(tǒng)交互功能不夠完善和豐富,在今后的研究中將豐富交互邏輯以及數(shù)據(jù)庫(kù)連接實(shí)現(xiàn)動(dòng)態(tài)存取等內(nèi)容。

圖3 Lumion渲染效果

猜你喜歡
按鈕用戶功能
這些按鈕能隨便按嗎?
也談詩(shī)的“功能”
當(dāng)你面前有個(gè)按鈕
關(guān)于非首都功能疏解的幾點(diǎn)思考
關(guān)注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關(guān)注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關(guān)注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
內(nèi)心不能碰的按鈕
如何獲取一億海外用戶
中西醫(yī)結(jié)合治療甲狀腺功能亢進(jìn)癥31例
主站蜘蛛池模板: 最新亚洲人成网站在线观看| 久久久国产精品免费视频| 亚洲国产日韩欧美在线| 婷婷色婷婷| h视频在线观看网站| 亚洲精品第一在线观看视频| 女同国产精品一区二区| 中文字幕色在线| 一区二区三区精品视频在线观看| 四虎影院国产| 亚洲综合精品香蕉久久网| 国产精品自在线拍国产电影| 国产成人精品免费视频大全五级| 欧美第一页在线| 2021最新国产精品网站| 日韩午夜福利在线观看| 日韩福利在线观看| 日本在线国产| 99人体免费视频| 日本一本正道综合久久dvd| 青草视频在线观看国产| 亚洲欧美一级一级a| 91久久夜色精品国产网站| 亚洲精品人成网线在线| 国产一区二区三区在线无码| av在线手机播放| 五月激情婷婷综合| 丝袜美女被出水视频一区| 欧美成人影院亚洲综合图| 国产乱人伦偷精品视频AAA| 欧美一区国产| 日本精品αv中文字幕| 在线国产毛片手机小视频 | 99激情网| 一级成人a毛片免费播放| 午夜三级在线| 国产精品一区二区国产主播| 免费女人18毛片a级毛片视频| 在线无码av一区二区三区| 五月激情综合网| 好久久免费视频高清| 经典三级久久| 久久9966精品国产免费| 精品久久国产综合精麻豆| 91免费观看视频| 九九久久精品免费观看| 国产超碰在线观看| 91人人妻人人做人人爽男同| 99这里只有精品6| 激情在线网| 亚洲成人在线免费观看| 国产精品视频观看裸模| www.av男人.com| 精品国产污污免费网站| 五月婷婷丁香色| 亚洲欧洲一区二区三区| 伊人久热这里只有精品视频99| 国产亚洲视频在线观看| 欧美一级特黄aaaaaa在线看片| 亚洲精品片911| 欧美激情第一欧美在线| 国产精品尹人在线观看| 欧美成人精品欧美一级乱黄| 在线一级毛片| 国产丝袜精品| 鲁鲁鲁爽爽爽在线视频观看| 性视频一区| 在线观看国产黄色| 91在线播放免费不卡无毒| 欧美成人手机在线观看网址| 亚洲国产清纯| 日本精品一在线观看视频| 国产第一页屁屁影院| 国产成人久久综合777777麻豆| 99激情网| 国产哺乳奶水91在线播放| 日韩精品无码不卡无码| 国产三区二区| 欧美yw精品日本国产精品| 国产成人AV大片大片在线播放 | 国产三区二区| 亚洲精品男人天堂|