亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Unity虛擬校園漫游系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)

        2014-02-03 07:34:43張紹江
        關(guān)鍵詞:校園建筑功能

        張紹江

        (天津中德職業(yè)技術(shù)學(xué)院,天津,300350)

        基于Unity虛擬校園漫游系統(tǒng)的設(shè)計(jì)與開(kāi)發(fā)

        張紹江

        (天津中德職業(yè)技術(shù)學(xué)院,天津,300350)

        隨著虛擬現(xiàn)實(shí)技術(shù)的不斷發(fā)展和計(jì)算機(jī)硬件系統(tǒng)性能的不斷提高,虛擬現(xiàn)實(shí)技術(shù)已被廣泛應(yīng)用于眾多領(lǐng)域,虛擬校園漫游系統(tǒng)就是其中之一,它讓學(xué)生足不出戶(hù)就能游覽校園全貌,感受校園文化,對(duì)學(xué)校的對(duì)外宣傳起到積極作用。文章使用Unity游戲引擎設(shè)計(jì)了一套虛擬校園漫游系統(tǒng),并介紹了該系統(tǒng)的開(kāi)發(fā)流程和使用的關(guān)鍵技術(shù)。

        虛擬現(xiàn)實(shí);虛擬校園;漫游;Unity

        一、虛擬現(xiàn)實(shí)技術(shù)和Unity平臺(tái)

        虛擬現(xiàn)實(shí)(Virtual Reality,簡(jiǎn)稱(chēng)VR)是在綜合使用計(jì)算機(jī)圖形圖像技術(shù)、傳感器技術(shù)、人機(jī)交互技術(shù)、網(wǎng)絡(luò)技術(shù)、多媒體技術(shù)等創(chuàng)設(shè)的一個(gè)以視覺(jué)感受為主,包括聽(tīng)覺(jué)等多種感受在內(nèi)的人工虛擬世界,并在這個(gè)虛擬世界中運(yùn)用多種交互手段給人一種多感官的刺激,是一種高級(jí)的人機(jī)交互系統(tǒng)[1]。同時(shí),虛擬現(xiàn)實(shí)不僅是一個(gè)演示載體,還是一個(gè)設(shè)計(jì)工具,它以視覺(jué)為主要形式產(chǎn)生一個(gè)多維的信息空間,為我們創(chuàng)建和體驗(yàn)虛擬世界提供了有利的支持[2]。隨著虛擬現(xiàn)實(shí)技術(shù)的不斷發(fā)展和計(jì)算機(jī)硬件系統(tǒng)性能的大幅提升,虛擬現(xiàn)實(shí)技術(shù)的應(yīng)用領(lǐng)域從最初的軍事仿真已逐漸過(guò)渡到文物保護(hù)、交通模擬、城市規(guī)劃、室內(nèi)設(shè)計(jì)、游戲開(kāi)發(fā)、教育教學(xué)等諸多領(lǐng)域,并取得了巨大的發(fā)展。其中虛擬校園漫游系統(tǒng)就是虛擬現(xiàn)實(shí)技術(shù)在校園景觀展示方面的應(yīng)用。

        Unity是一款跨平臺(tái)的游戲開(kāi)發(fā)引擎,主要應(yīng)用于虛擬現(xiàn)實(shí)、建筑可視化、三維視頻游戲等互動(dòng)系統(tǒng)的開(kāi)發(fā)。其主要特點(diǎn)是入門(mén)簡(jiǎn)單、自動(dòng)化程度高,可同時(shí)運(yùn)行在windows和Mac OS操作系統(tǒng)下,支持C#、JavaScript、Boo三種腳本語(yǔ)言,其成品可發(fā)布至windows、Mac、Android等多種平臺(tái)。

        二、虛擬校園漫游系統(tǒng)的開(kāi)發(fā)流程

        按照虛擬現(xiàn)實(shí)系統(tǒng)開(kāi)發(fā)的一般流程,可以將虛擬校園漫游系統(tǒng)的開(kāi)發(fā)流程分為素材的收集與整理、三維場(chǎng)景的建立與優(yōu)化及系統(tǒng)交互的開(kāi)發(fā)4個(gè)部分,如圖1所示。

        圖1 虛擬校園漫游系統(tǒng)的開(kāi)發(fā)流程圖

        素材的收集與整理為三維場(chǎng)景的建立提供校園內(nèi)部建筑、場(chǎng)地、道路等尺寸數(shù)據(jù)和外觀圖像素材;三維場(chǎng)景建立后要優(yōu)化并導(dǎo)入到Unity中進(jìn)行使用;最后在Unity中進(jìn)行系統(tǒng)交互的開(kāi)發(fā)。

        三、虛擬校園漫游系統(tǒng)開(kāi)發(fā)涉及的關(guān)鍵技術(shù)

        (一)三維場(chǎng)景建模技術(shù)

        在三維場(chǎng)景的建立過(guò)程中,校園中的地面、建筑等主要使用3DS MAX軟件來(lái)完成。先通過(guò)丈量好的尺寸數(shù)據(jù)或施工圖紙繪出建筑外觀輪廓線,再制作建筑物外墻,然后通過(guò)布爾運(yùn)算和對(duì)多邊形中的頂點(diǎn)、邊、面和元素進(jìn)行修改,完成建筑模型的建立。最后,將處理好的建筑外觀圖像作為建筑模型的貼圖進(jìn)行應(yīng)用,如圖2所示。

        圖2 使用3DS MAX進(jìn)行建筑建模圖

        在3DS MAX中建立的三維模型需要導(dǎo)出到Unity中進(jìn)行使用。常用的方法是在3DSMAX中將文件導(dǎo)出為.FBX文件,連同貼圖一同放置到Unity的資源文件夾中。打開(kāi)Unity后,即可自動(dòng)加載,供開(kāi)發(fā)人員使用。

        對(duì)于天空盒的建立,Unity中提供了一個(gè)設(shè)置選項(xiàng),可以方便地使用Unity中默認(rèn)的天空盒資源,或者自定義5張可無(wú)縫連接圖片進(jìn)行天空盒的設(shè)置。

        (二)三維場(chǎng)景的優(yōu)化技術(shù)

        三維場(chǎng)景中面數(shù)的多少直接關(guān)系到系統(tǒng)運(yùn)行的效率,因此要盡量降低模型的面數(shù),以達(dá)到系統(tǒng)流暢運(yùn)行的目的[3]。

        1.三維建筑的優(yōu)化

        一是將漫游過(guò)程中看不到的面降低其復(fù)雜程度,使用一個(gè)平面來(lái)代替;二是使用紋理貼圖技術(shù),將面數(shù)較多的外墻文字、門(mén)窗部分的模型,復(fù)雜的光影效果等元素進(jìn)行先期渲染,然后作為虛擬校園中建筑的貼圖使用,以達(dá)到減少面數(shù)的目的。

        2.樹(shù)木、路燈、隔離墩等場(chǎng)景元素的優(yōu)化

        在校園場(chǎng)景中,離不開(kāi)樹(shù)木、隔離墩、垃圾桶等場(chǎng)景元素,數(shù)量多且不是重點(diǎn)??墒褂肈oubleBoarding(交叉板)技術(shù)進(jìn)行優(yōu)化,即使用兩個(gè)互相垂直且中心交叉的平面,并為其添加樹(shù)木、隔離墩等場(chǎng)景元素的透明紋理。

        3.實(shí)時(shí)交互技術(shù)

        系統(tǒng)交互主要在Unity中開(kāi)發(fā)。虛擬校園漫游系統(tǒng)中的交互主要是鍵盤(pán)與鼠標(biāo)的交互,通過(guò)鍵盤(pán)和鼠標(biāo)的控制改變場(chǎng)景中漫游視角的瀏覽位置與角度,主要使用C#腳本語(yǔ)言編寫(xiě)的腳本文件來(lái)實(shí)現(xiàn)。例如向前移動(dòng)的交互代碼為:

        此外,GUI也是虛擬校園漫游系統(tǒng)的主要交互方式,負(fù)責(zé)系統(tǒng)漫游方式的選擇、系統(tǒng)的幫助和退出。例如,創(chuàng)建“自動(dòng)漫游”功能按鈕的代碼如下:

        4.碰撞檢測(cè)技術(shù)

        碰撞檢測(cè)是虛擬現(xiàn)實(shí)中一項(xiàng)重要技術(shù),是基于現(xiàn)實(shí)生活中一個(gè)普遍存在的事實(shí):兩個(gè)不可穿透的對(duì)象不能共享相同的空間區(qū)域[4]。碰撞檢測(cè)技術(shù)的主要目的是檢測(cè)兩個(gè)物體之間是否發(fā)生了碰撞,如果發(fā)生碰撞將如何進(jìn)行處理。好的碰撞檢測(cè)要求物體在場(chǎng)景中可以平滑移動(dòng)[5]。在Unity中,內(nèi)置了盒形碰撞器、球體碰撞器、膠囊碰撞器、網(wǎng)格碰撞器等來(lái)實(shí)現(xiàn)物體之間的碰撞檢測(cè)。用于進(jìn)行碰撞檢測(cè)的函數(shù)有:

        MonoBehaviour.OnCollisionEnter(Collision colli sionInfo)、

        MonoBehaviour.OnCollisionExit(Collision collision Info)、

        MonoBehaviour.OnCollisionStay(Collision collision Info),分別表示當(dāng)進(jìn)入碰撞器、退出碰撞器和逗留碰撞器時(shí)所觸發(fā)的函數(shù)。

        四、虛擬校園漫游系統(tǒng)的實(shí)現(xiàn)

        (一)系統(tǒng)的總體規(guī)劃與功能設(shè)計(jì)

        虛擬校園漫游系統(tǒng)一般是在網(wǎng)頁(yè)瀏覽器上展示學(xué)校整體面貌的系統(tǒng),為使用戶(hù)能夠直觀獲取校園的外觀特征,校園中的建筑、場(chǎng)地等都真實(shí)重現(xiàn),并且用戶(hù)可以通過(guò)鼠標(biāo)、鍵盤(pán)自主控制觀看角度。虛擬校園漫游系統(tǒng)主要實(shí)現(xiàn)以下功能:

        1.漫游功能

        系統(tǒng)的漫游功能包含自動(dòng)漫游與交互式漫游兩種方式。自動(dòng)漫游是指漫游路徑已固定的方式,在該方式下瀏覽視角將按照規(guī)劃好的路徑進(jìn)行運(yùn)動(dòng),用戶(hù)不能改變其狀態(tài)。交互式漫游是用戶(hù)可以通過(guò)鼠標(biāo)、鍵盤(pán)等交互方式控制瀏覽視角與位置的方式,這種方式需要用戶(hù)手動(dòng)控制,靈活性更強(qiáng)。

        2.GUI功能

        系統(tǒng)提供操作方便的GUI用戶(hù)界面,用于控制手動(dòng)漫游與交互式漫游之間的相互切換,以及幫助、退出系統(tǒng)等功能。

        (二)系統(tǒng)主要功能的實(shí)現(xiàn)

        1.自動(dòng)漫游功能的實(shí)現(xiàn)

        自動(dòng)漫游功能是按照預(yù)先設(shè)定好的路徑進(jìn)行的漫游,可以通過(guò)為顯示漫游瀏覽內(nèi)容的主攝像機(jī)(以后稱(chēng)為“漫游攝像機(jī)”)設(shè)定動(dòng)畫(huà)的方式來(lái)實(shí)現(xiàn)。這需要在Animation(動(dòng)畫(huà))面板中為漫游攝像機(jī)設(shè)置關(guān)鍵幀動(dòng)畫(huà),如圖3所示。

        圖3 為漫游攝像機(jī)設(shè)置關(guān)鍵幀動(dòng)畫(huà)圖

        2.交互式漫游功能的實(shí)現(xiàn)

        由于交互式漫游功能是用戶(hù)控制漫游攝像機(jī)進(jìn)行瀏覽的方式,整個(gè)漫游的路徑受用戶(hù)控制,為避免漫游攝像機(jī)與建筑、樹(shù)木等碰撞后“穿入”其內(nèi)部的情況,需要為場(chǎng)景中的物體添加碰撞器,進(jìn)行碰撞檢測(cè)。

        交互式漫游使用Unity中的第一人稱(chēng)角色控制器來(lái)實(shí)現(xiàn),給人以強(qiáng)烈的沉浸感。在實(shí)現(xiàn)上使用一個(gè)名稱(chēng)為“First Person Controller”的物體作為用戶(hù)操作的對(duì)象,同時(shí)添加“Character Controller”這一角色控制組件和Mouse Look、Character Motor、FPSInput Controller三個(gè)C#腳本組件,即可實(shí)現(xiàn)交互式漫游功能。

        3.GUI界面的實(shí)現(xiàn)

        GUI界面主要用于實(shí)現(xiàn)手動(dòng)漫游與交互式漫游之間的切換、打開(kāi)幫助和退出系統(tǒng)等功能,以界面功能按鈕為主。例如,由手動(dòng)漫游向交互式漫游進(jìn)行切換時(shí),用戶(hù)只需使用鼠標(biāo)點(diǎn)擊“交互式漫游”按鈕,然后系統(tǒng)將關(guān)閉自動(dòng)漫游攝像機(jī),打開(kāi)交互漫游攝像機(jī),完成功能的轉(zhuǎn)換。具體程序如下:

        void OnGUI(){

        if(GUI.Button(newRect(400,560,100,50),"交互式漫游")){

        其他功能按鈕使用同樣的方法進(jìn)行創(chuàng)建,并為其添加被點(diǎn)擊時(shí)所執(zhí)行的語(yǔ)句。完成后的效果,如圖4所示。

        圖4 GUI界面功能按鈕圖

        隨著計(jì)算機(jī)技術(shù)和虛擬現(xiàn)實(shí)技術(shù)的不斷發(fā)展,虛擬現(xiàn)實(shí)技術(shù)已經(jīng)成為用戶(hù)通過(guò)計(jì)算機(jī)來(lái)獲取知識(shí)信息的新途徑。虛擬校園漫游系統(tǒng)是使用Unity進(jìn)行開(kāi)發(fā)的能夠在瀏覽器上使用的校園展示系統(tǒng),它為學(xué)生及其家長(zhǎng)提供了一個(gè)了解學(xué)校的平臺(tái),對(duì)學(xué)校的對(duì)外宣傳起到了積極的作用。

        [1]石教英.虛擬現(xiàn)實(shí)基礎(chǔ)及實(shí)用算法[M].北京:科學(xué)出版社,2002:1-3.

        [2]Steven M.Drucker,David Zeltzer.Intelligent Camera Control in a Virtual Environment[J].USA:Computing&Electronic Books,1998,34-57.

        [3]賈民政,劉書(shū)香.3ds Max中低多邊形模型的創(chuàng)建方法研究.北京工業(yè)職業(yè)技術(shù)學(xué)院學(xué)報(bào)[J],2012 (7):36-39.

        [4]王祎.虛擬現(xiàn)實(shí)中碰撞檢測(cè)關(guān)鍵技術(shù)研究[D].吉林:吉林大學(xué),2009.

        [5]王樹(shù)斌.淺析Unity3d開(kāi)發(fā)游戲流程及常用技術(shù)[J].電腦知識(shí)與技術(shù),2012,8(22):5351-5352.

        編輯 朱榮華

        G712

        A

        2095-8528(2014)02-065-03

        2014-07-03

        張紹江(1980-),男,天津市人,碩士,天津中德職業(yè)技術(shù)學(xué)院藝術(shù)系講師,研究方向?yàn)橛耙晞?dòng)畫(huà)與虛擬現(xiàn)實(shí)。

        猜你喜歡
        校園建筑功能
        也談詩(shī)的“功能”
        《北方建筑》征稿簡(jiǎn)則
        北方建筑(2021年6期)2021-12-31 03:03:54
        關(guān)于建筑的非專(zhuān)業(yè)遐思
        文苑(2020年10期)2020-11-07 03:15:36
        建筑的“芯”
        關(guān)于非首都功能疏解的幾點(diǎn)思考
        校園的早晨
        琴童(2017年3期)2017-04-05 14:49:04
        春滿(mǎn)校園
        獨(dú)特而偉大的建筑
        開(kāi)心校園
        爆笑校園
        亚洲色欲久久久综合网| 色翁荡息又大又硬又粗视频| 一区二区亚洲精品在线| 中文字幕亚洲综合久久天堂av| 蜜桃视频一区二区在线观看| 精品九九人人做人人爱| 粗大猛烈进出高潮视频| 免费a级毛片无码无遮挡| 欧美午夜精品久久久久久浪潮| 九九在线视频| 国产午夜精品一区二区三区嫩草 | 麻豆密入视频在线观看| 国产在线高清无码不卡| 亚洲日本视频一区二区三区| 国产精品国产三级国a| 亚洲视频在线观看第一页| 久久精品国产av麻豆五月丁| 亚洲a∨无码精品色午夜| 天天做天天爱天天综合网2021| 免费无码又爽又刺激网站| 香色肉欲色综合| 国产v综合v亚洲欧美大天堂| 亚洲av偷拍一区二区三区| 日本视频一区二区三区| 亚洲综合日韩一二三区| 极品少妇一区二区三区四区| 国产成人一区二区三中文| 无遮高潮国产免费观看韩国| 亚洲精品乱码久久麻豆| 久久这里都是精品99| 天天做天天爱夜夜爽毛片毛片| 九九热线有精品视频86| 国产a级午夜毛片| 国产色婷亚洲99精品av网站| 美妇炮灰被狂躁爽到高潮h| 免费a级作爱片免费观看美国| 日日摸夜夜欧美一区二区| 加勒比一区二区三区av| 国产av精品一区二区三区久久| 777米奇色狠狠俺去啦| 国产suv精品一区二人妻|