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

        ?

        基于Unity3D的室內(nèi)漫游系統(tǒng)

        2016-11-09 07:31:47肖建良張程李陽
        電子設(shè)計工程 2016年19期
        關(guān)鍵詞:動畫用戶模型

        肖建良,張程,李陽

        (大連理工大學 城市學院,遼寧 大連116600)

        基于Unity3D的室內(nèi)漫游系統(tǒng)

        肖建良,張程,李陽

        (大連理工大學 城市學院,遼寧 大連116600)

        Unity3D是近幾年非常流行的一個3D游戲開發(fā)引擎,它的特點是跨平臺能力強,移植便捷,3D圖形性能出眾。文中以室內(nèi)虛擬3D場景為開發(fā)目標,利用Unity3D游戲引擎,結(jié)合C#腳本語言開發(fā)了室內(nèi)漫游系統(tǒng)。系統(tǒng)為用戶提供了近乎真實的虛擬環(huán)境,用戶可以自由的漫游、瀏覽、與環(huán)境互動。文中還討論并實現(xiàn)了在Unity3D平臺上構(gòu)建室內(nèi)漫游系統(tǒng)的關(guān)鍵技術(shù)。系統(tǒng)運行穩(wěn)定、畫面流暢,驗證了Unity3D是開發(fā)VR項目的有效工具。

        虛擬現(xiàn)實;Unity3D;游戲引擎;仿真

        虛擬現(xiàn)實技術(shù)也稱靈境技術(shù)或人工環(huán)境[1],是利用計算機模擬產(chǎn)生一個三維空間的虛擬世界,提供使用者關(guān)于視覺、聽覺、觸覺等感官的模擬,讓使用者如同身臨其境一般,可以及時、沒有限制地感知三維空間內(nèi)的事物。隨著社會發(fā)展,虛擬現(xiàn)實技術(shù)在教育、建筑、工業(yè)仿真、醫(yī)療、軍事和娛樂游戲等領(lǐng)域得到了廣泛的應用[2]。目前在家居設(shè)計、場地租賃等行業(yè)中,用戶主要通過照片、圖片和相應的文字說明來了解相關(guān)信息,沒有身臨其境的感覺,缺乏與環(huán)境間的互動。室內(nèi)漫游系統(tǒng)基于虛擬現(xiàn)實技術(shù)和網(wǎng)絡(luò)技術(shù),它更直觀形象,更接近真實環(huán)境,并具有更好的交互性,能夠給使用者一種逼真、身臨其境的感覺。

        Unity3D是由Unity Technologies開發(fā)的一個讓玩家輕松創(chuàng)建諸如三維視頻游戲、建筑可視化、實時三維動畫等類型互動內(nèi)容的多平臺的綜合型游戲開發(fā)工具,是一個全面整合的專業(yè)游戲引擎[3]。作為一款跨平臺的游戲引擎,支持的平臺包括PC、Mac、Linux、Web、iOS、Android、Xbox360、Play Station3等大部分主流平臺。隨著iOS、Android手機的大量普及和3D網(wǎng)絡(luò)游戲的興起,Unity3D因其強大的功能,良好的移植性,在手機和網(wǎng)絡(luò)平臺得到了廣泛的應用和傳播[4]。

        1 室內(nèi)漫游系統(tǒng)的開發(fā)流程與關(guān)鍵技術(shù)

        1.1開發(fā)流程

        室內(nèi)漫游系統(tǒng)的開發(fā)遵循軟件開發(fā)的一般步驟,依次是分析、設(shè)計、開發(fā)、測試、修改反復且漸進的完成所規(guī)劃的功能[5]。系統(tǒng)的開發(fā)目標為構(gòu)建一個虛擬的3D室內(nèi)環(huán)境,因而其開發(fā)流程主要分為兩部分:1)創(chuàng)建室內(nèi)環(huán)境和景物的3D模型;2)通過編寫C#腳本,實現(xiàn)用戶與虛擬環(huán)境間的互動。第一部分的主要工作是利用3D建模工具3DMax創(chuàng)建真實環(huán)境中各個物體的3D模型。第二部分的主要工作是編寫互動腳本,利用腳本將模型與Unity3D連接起來,賦予靜態(tài)模型交互的能力。系統(tǒng)的開發(fā)流程包括創(chuàng)建模型,模型貼圖,導入模型,編寫互動腳本,全景測試等5部分,其細節(jié)如圖1所示。

        圖1 系統(tǒng)開發(fā)流程

        1.2關(guān)鍵技術(shù)

        室內(nèi)漫游系統(tǒng)是室內(nèi)環(huán)境的真實再現(xiàn),并為用戶提供漫游,瀏覽和與虛擬環(huán)境交互等功能。在Unity3D平臺中,以上功能的實現(xiàn)依賴攝影機運動,碰撞檢測,3D拾取,動畫和音效等關(guān)鍵技術(shù)。

        1.2.1攝影機運動

        用戶利用“UP”、“DOWN”、“LEFT”、“RIGHT”鍵控制攝影機在場景中向前、向后、向左、向右運動以實現(xiàn)第一人稱場景漫游,并利用鼠標控制攝影機的觀察角度。首先編寫運動控制腳本,然后將腳本指定給攝影機,攝影機向前運動的具體代碼片段如下。

        1.2.2碰撞檢測

        在Unity3D平臺中,通常利用碰撞器來檢測對象間是否發(fā)生碰撞。Unity3D中內(nèi)建的碰撞器包括:BoxCollider,Sphere Collider,CapsuleCollider,MeshCollider,WheelCollider和 TerrianCollider[6]??紤]到運算效率和場景中的對象大多為規(guī)則形狀,因此選擇BoxCollider或SphereCollider,其實現(xiàn)步驟如下。

        1)為需要進行碰撞檢測的對象添加BoxCollider或Sphere Collider;修改 BoxCollider的 size屬性或 SphereCollider的Radius屬性,確保其能完全包圍待檢測對象;將BoxCollider或SphereCollider的IsTrigger屬性設(shè)置為ture。

        2)編寫互動腳本,處理碰撞事件,然后將其指定給待檢測對象,具體代碼片段如下。

        1.2.33D拾取

        在漫游過程中,允許用戶通過鼠標選中虛擬環(huán)境中的物體進行操作,這時就需要3D拾取技術(shù)[7]。3D拾取技術(shù)的基本思想非常簡單,由攝影機和屏幕上的鼠標點擊位置確定一條射線,射線射向3D世界,最先和此射線相交的物體就是被選中的物體。具體代碼片段如下。

        1.2.4動畫和音效

        動畫和音效都是室內(nèi)漫游系統(tǒng)的重要組成部分,它們會提高場景的真實性,讓用戶覺得這并不是一個由靜態(tài)模型堆砌的世界,而是一個真實的世界[8],當開門的時候,門應該是慢慢打開的,同時還會發(fā)出聲音,這時就需要動畫和音效。Unity3D中有完善的動畫和音效的處理機制,其實現(xiàn)步驟如下:

        1)創(chuàng)建動畫和音效,導入Unity3D,并根據(jù)要求剪輯。

        2)在要播放動畫的對象上添加動畫組件,在要播放音效的對象上添加聲音組件。

        3)編寫腳本播放動畫和音效,然后將其指定給對應對象,播放開門動畫和音效的具體代碼片段如下。

        2 室內(nèi)漫游系統(tǒng)的實現(xiàn)

        2.1模型的構(gòu)建

        在整個系統(tǒng)的開發(fā)過程中,模型構(gòu)建是最耗時的一項工作。為了讓3D場景呈現(xiàn)出與實景一致的感覺,在模型構(gòu)建上,需要盡量塑造出與原物件比例一致的3D模型。模型建好之后,接下來就是在模型表面貼上逼真的素材。素材的來源主要是網(wǎng)絡(luò)下載的素材庫和實景照片。為了降低場景的復雜度,對于室內(nèi)環(huán)境的細節(jié),比如窗戶,室內(nèi)背景墻等并沒有單獨建模,而是采用紋理貼圖,用紋理圖片替代復雜的模型結(jié)構(gòu)。在模型的構(gòu)建中還考慮到對模型的優(yōu)化,通過采用刪除不可見面、減少材質(zhì)數(shù)量、壓縮貼圖等優(yōu)化方法,簡化了模型,減少了模型的大小。

        圖2 辦公室模型

        2.2場景設(shè)計

        場景設(shè)計是系統(tǒng)設(shè)計的一個重要環(huán)節(jié)。當制作復雜環(huán)境時,需要將整個環(huán)境分割成若干個子場景,這樣可以減少每次載入系統(tǒng)的模型數(shù)量,加快系統(tǒng)的執(zhí)行速度,減少用戶的等待時間。室內(nèi)環(huán)境包含多個房間物體的大量3D模型,因而需要先進行場景分割,將每個房間作為一個單獨的子場景,并對每個子場景單獨建模。漫游時,只加載所需要的房間模型,而不用載入全部的環(huán)境模型,降低了所消耗的資源。在多場景環(huán)境中,場景間的切換會出現(xiàn)顯示的停滯或滯后現(xiàn)象。為了解決該問題,在系統(tǒng)中設(shè)置了用于加載場景資源和顯示加載進度的空場景。當用戶需要場景切換時,并不直接加載新場景,而是加載空場景。由于空場景中沒有模型,所以加載速度快,不會出現(xiàn)停滯或滯后現(xiàn)象。然后在空場景中再加載新場景,并顯示加載進度,這樣有效解決了場景切換中出現(xiàn)的顯示停滯后滯后問題。

        2.3界面設(shè)計

        Unity3D中具有一個強大的GUI功能,可以利用GUI來制作瀏覽界面、按鈕、滾動條和對話框等對象[9],常被用于實現(xiàn)人機交互界面游系統(tǒng)中,利用GUI元件制作用戶登錄頁面和漫游頁面,前者用于用戶登錄、退出系統(tǒng),后者用于實現(xiàn)導航菜單,用戶可利用導航菜單選擇區(qū)域瀏覽、自動漫游或返回登錄頁面。區(qū)域瀏覽指的是讓用戶直接到達指定的瀏覽區(qū)域,自動漫游指的是讓用戶按照事先設(shè)計好的線路瀏覽。系統(tǒng)的登錄頁面如圖3所示。

        圖3 系統(tǒng)登錄頁面

        2.4交互性設(shè)計

        Unity3D利用腳本實現(xiàn)用戶與環(huán)境間的互動[10],開發(fā)者可以使用JavaScript,Mono或C#來編寫腳本。Unity3D中內(nèi)置了NVIDIA的Physx物理引擎,使開發(fā)者可以輕松地在虛擬環(huán)境中模擬出許多物理現(xiàn)象,比如坐標變換、剛體運動等。系統(tǒng)的交互設(shè)計主要包括環(huán)境漫游,場景切換和信息交互。

        環(huán)境漫游是系統(tǒng)的主要功能,通過利用鍵盤和鼠標控制攝影機的運動,實現(xiàn)了用戶以第一人稱視角對環(huán)境的漫游、瀏覽。

        系統(tǒng)采用多場景模式,每個房間都是一個子場景,當用戶從一個房間進入另一個房間,這時就會出現(xiàn)場景間的切換。場景切換應用了碰撞檢測、動畫和音效技術(shù),其實現(xiàn)步驟如下:

        1)為房門添加BoxCollider,設(shè)置其Size屬性,使其略大于房門尺寸,設(shè)置其Is Trigger屬性為ture。

        2)編寫腳本,處理碰撞事件。在OnTriggerEnter函數(shù)中播放動畫、音效,加載空場景。把腳本指定給房門。

        3)編寫腳本,加載新場景。把腳本指定給空場景的攝影機。

        用戶在漫游過程中可以使用鼠標點擊場景中的物體,查看其相關(guān)的屬性信息或?qū)ζ溥M行某種操作,比如點擊開關(guān)可以開、閉室內(nèi)的電燈。信息交互主要應用了3D拾取技術(shù),通過3D拾取技術(shù)確定用戶的操作對象,然后執(zhí)行相關(guān)的操作。

        3 結(jié)束語

        文中以3Dmax為建模工具,利用Unity3D游戲引擎,結(jié)合C#腳本語言開發(fā)了一款互動的室內(nèi)漫游系統(tǒng),并利用Unity3D的多平臺部署功能,將其發(fā)布到Web平臺。從模型圖片中可以看到,系統(tǒng)為用戶提供了一個近乎實景的虛擬環(huán)境。文中討論并實現(xiàn)了在Unity3D平臺上構(gòu)建室內(nèi)漫游系統(tǒng)的若干關(guān)鍵技術(shù),這些關(guān)鍵技術(shù)同樣可以應用于其他,包括電子、科技、安全、醫(yī)學等相關(guān)的虛擬現(xiàn)實和仿真領(lǐng)域。

        [1]朱惠娟.基于Unity3D的虛擬漫游系統(tǒng) [J].計算機系統(tǒng)應用,2012,21(10):36-38.

        [2]干建松.基于Unity3d的室內(nèi)漫游的關(guān)鍵技術(shù)研究[J].鹽城工學院學報,2011,24(4):56-59.

        [3]Unity3D [DB/OL].(2011-05-01)[2015-9-30].http://baike. haosou.com/doc/5376000-5612112.htm l.

        [4]金璽曾.Unity 3D手機游戲開發(fā)[M].北京:清華大學出版社,2013.

        [5]李遠鑫,蔣海鷗,徐亦飛,徐芝琦.基于Web3D的交互式虛擬社區(qū)[J].計算機工程,2011,37(11):289-290.

        [6]吳亞峰,于復興.Unity 3D游戲開發(fā)技術(shù)詳解與典型案例[M].北京:人民郵電出版社,2012.

        [7]倪樂波,戚鵬,遇麗娜,王婧.Unity3d產(chǎn)品虛擬展示技術(shù)的研究與應用[J].數(shù)字技術(shù)與應用,2010,21(9):54-55.

        [8]黃濤.基于Unity3D的虛擬校園漫游系統(tǒng)的研究和實現(xiàn)[D].桂林:廣西師范大學,2014.

        [9]鄭磊.基于三維網(wǎng)頁技術(shù)的Unity3D教學管理系統(tǒng)的設(shè)計與實現(xiàn)[D].上海:上海交通大學,2013.

        [10]王星捷,李春花.基于Unity3D平臺的三維虛擬城市研究與應用[J].計算機技術(shù)與發(fā)展,2013,23(4),241-244.

        The indoor roam ing system based on Unity3D

        XIAO Jian-liang,ZHANG Cheng,LIYang
        (City Institute,Dalian University of Technology,Dalian 116600,China)

        Unity3D is a very popular game engine in recent years,which has the ability to crossplatforms,transplant conveniently and perform 3D graphics eminently.In this paper,with the aim to develop indoor virtual 3 D scenes,using Unity3D game engine,combined with C#script language to develop the indoor roaming system,which provides userswith an almost real virtualenvironmentwhere the user can free roaming,browse,interactwith the environment.In this paper,the key technologies of indoor roaming system are discussed and implemented on Unity3D platform.Unity3D is an efficient tool to develop VR projectis verified on the base ofstable system and smooth images.

        virtual reality;Unity3D;game engine;simulation

        TN02

        A

        1674-6236(2016)19-0054-03

        2015-10-27稿件編號:201510195

        遼寧大學生創(chuàng)新基金(201313198009)

        肖建良(1964—),男,遼寧大連人,碩士,副教授。研究方向:計算機應用技術(shù)、虛擬現(xiàn)實。

        猜你喜歡
        動畫用戶模型
        一半模型
        做個動畫給你看
        重要模型『一線三等角』
        動畫發(fā)展史
        重尾非線性自回歸模型自加權(quán)M-估計的漸近分布
        我的動畫夢
        文苑(2019年22期)2019-12-07 05:28:56
        關(guān)注用戶
        商用汽車(2016年11期)2016-12-19 01:20:16
        3D打印中的模型分割與打包
        關(guān)注用戶
        商用汽車(2016年6期)2016-06-29 09:18:54
        我是動畫迷
        學生天地(2016年9期)2016-05-17 05:45:06
        夜夜被公侵犯的美人妻| 亚洲人成电影网站色| 草草浮力影院| 性夜夜春夜夜爽aa片a| 嗯啊 不要 啊啊在线日韩a| 亚洲专区路线一路线二网| 护士的小嫩嫩好紧好爽| 国产成人综合亚洲精品| 成人午夜无人区一区二区| 亚洲无av码一区二区三区| 亚洲一区精品无码| 精品人妻va出轨中文字幕| 久久青青草原亚洲AV无码麻豆 | 免费a级毛片无码a∨蜜芽试看| 中文字幕一区二区三区人妻少妇 | 国产西西裸体一级黄色大片| 狂插美女流出白浆视频在线观看| 18禁黄污吃奶免费看网站| 三年片在线观看免费大全电影| 亚洲日本无码一区二区在线观看| 亚洲国产精品日韩av专区| av国产传媒精品免费| 成年在线观看免费视频| 国产在线白浆一区二区三区在线| 久草福利国产精品资源| 亚洲国产精品va在线看黑人| 五月天国产精品| 国产精品不卡免费版在线观看| 国产精品国产三级国产av品爱| 情侣黄网站免费看| 中文字幕有码一区二区三区| 白白色免费视频一区二区在线| 日本高清视频wwww色| y111111少妇影院无码| 国产美女久久久亚洲综合| 草逼短视频免费看m3u8| 亚洲熟女乱色综合亚洲av| 久久精品国产亚洲Av无码偷窍| 国产精品美女主播在线| 色欲网天天无码av| 国产精品白浆一区二小说|