• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于Unity3D的綜合體育館虛擬漫游實現(xiàn)

      2018-09-26 11:34:32王莉莉宋燕燕童氿一
      數(shù)字技術與應用 2018年5期
      關鍵詞:體育館

      王莉莉 宋燕燕 童氿一

      摘要:隨著計算機技術和網(wǎng)絡技術的高速發(fā)展,虛擬現(xiàn)實技術逐漸走進人們的日常生活。建筑虛擬漫游作為虛擬現(xiàn)實技術的一個重要分支,被廣泛應用于場館展示項目中。本文以綜合體育館為虛擬漫游場景,使用3D Max軟件制作三維模型,Unity3D引擎為開發(fā)工具,實現(xiàn)了綜合體育場館第一人稱虛擬漫游。

      關鍵詞:虛擬漫游;體育館;Unity3D;第一人稱漫游

      中圖分類號:S126 文獻標識碼:A 文章編號:1007-9416(2018)05-0089-03

      1 引言

      虛擬現(xiàn)實技術是一種利用計算機模擬產(chǎn)生場景,并能實現(xiàn)虛擬現(xiàn)實環(huán)境的計算機仿真技術。利用最新的計算機虛擬現(xiàn)實技術創(chuàng)作的三維虛擬環(huán)境較二維照片和視頻更直觀形象,更逼真,臨場感更強。傳統(tǒng)體育場館在宣傳上,僅僅只能通過網(wǎng)站圖片的形式,缺乏現(xiàn)實空間感受。場景虛擬漫游技術的實現(xiàn),可以讓使用者產(chǎn)生身臨其境的感覺,還可以在場景中通過交互,實現(xiàn)場館預定、查看詳細功能等。本項目的研究具有較高的實際應用價值。

      2 虛擬漫游系統(tǒng)及Unity3D引擎

      虛擬漫游系統(tǒng)是一種能夠集視覺、聽覺、觸覺為一體的虛擬環(huán)境,能夠實時仿真虛擬空間,可從任意角度對虛擬對象進行瀏覽觀察,可與其中的對象進行交互的新技術。具有沉浸感、交互性、構想性等特點。在建筑設計、城鄉(xiāng)規(guī)劃、家具裝潢、場景展示等領域,游戲設計與娛樂行業(yè)應用廣泛。

      Unity3D是由Unity Technologies開發(fā)的一款跨平臺綜合游戲引擎,能夠運行在Windows和Mac OS X操作系統(tǒng)下,可以發(fā)布游戲到Windows,Mac,Wii,iPhone,WebGL(需要HTML5)和Android等多種平臺。腳本語言簡單,支持各種插件,開發(fā)速度快,跨平臺性好,可以讓用戶輕松創(chuàng)建3D游戲、建筑可視化、三維動畫等類型的交互式內(nèi)容。

      3 綜合體育館系統(tǒng)設計

      本文所實現(xiàn)的綜合體育館漫游系統(tǒng)主要利用三維建模軟件3DS Max完成場景和模型的建模,利用Unity3D引擎來完成系統(tǒng)的漫游和交互。

      3.1 系統(tǒng)總體設計目標

      綜合體育館漫游系統(tǒng)主要包含乒乓球場、羽毛球場和籃球場所、觀眾席看臺四部分。使用者可通過鍵盤W、A、S、D鍵來控制位移,通過鼠標控制視角,可瀏覽場館任何區(qū)域。可查看場館預定信息、進行預定操作、查看操作說明和退出系統(tǒng)等。

      3.2 系統(tǒng)功能模塊設計

      本系統(tǒng)主要包括建模模塊、漫游模塊和交互模塊,功能結構圖如圖1所示。建模模塊主要實現(xiàn)綜合體育館整體建模和三個運動場區(qū)的建模;漫游模塊主要實現(xiàn)第一人稱視角位移和視角控制,碰撞檢測;交互模塊主要實現(xiàn)查看預定信息、預定場館、查看操作說明及退出系統(tǒng)功能。

      4 綜合體育館漫游系統(tǒng)實現(xiàn)

      4.1 建模模塊實現(xiàn)

      本系統(tǒng)建模主要通過3DS Max軟件建模、貼圖、渲染、烘焙完成。主要包括體育館整體建模和三個運動場區(qū)的建模。在將模型導入Unity3D引擎前對模型面數(shù)進行了優(yōu)化,將多個次要對象通過布爾運算合成一個對象,減少Unity3D的渲染負擔,檢查場景中的孤立點和面,適當刪除,調整貼圖模式,減少燈數(shù)。通過此類優(yōu)化措施,提高系統(tǒng)運行效率。

      (1)體育館整體場館建模。場館外觀為灰色,整體類正方形,有層次感,側面為透明玻璃。如圖2所示為導入Unity3D后的整體場館外觀圖。館內(nèi)墻壁采用灰色吸音材料,可以隔絕噪音,保證比賽不受雜音影響。制作時,新建一個長20,寬5,高5的長方體,然后復制粘貼出多個同樣的長方體,再進行堆疊,將體育館模型構建出來。如圖3所示為導入Unity3D后的場館室內(nèi)效果圖

      (2)乒乓球場臺建模。乒乓球球臺按照國際標準設計,乒乓球球桌臺面尺寸為2740×1525mm,臺高為760mm,網(wǎng)寬1.83米,網(wǎng)高0.1525米。本系統(tǒng)中采用綠色桌面。如圖4所示為乒乓球球臺模型圖。

      (3)羽毛球場建模。羽毛球球場按照國際標準尺寸設計,球場為長方形場地,長度為13.40m,場地寬為5.18m設計為單打場地。球場上各條線寬均為4cm,球場界限用白色畫出。羽毛球球網(wǎng)長6.10m、寬760mm,網(wǎng)孔大小在15-20mm之間,網(wǎng)的上沿有75mm寬的雙層白布。網(wǎng)柱高1.55m,兩根網(wǎng)柱分別立在雙打場地邊線的中點上。球網(wǎng)中部上沿離地面為1.524m,球網(wǎng)兩端高為1.55m。如圖5所示為羽毛球場模型圖。

      (4)籃球場建模?;@球球場按照國際標準尺寸設計,整個籃球場地長28m,寬15m?;@圈下沿距地面3.05m。線條:寬度為5cm. 球場界線距觀眾席2m。中線向兩側邊線外各延長15cm。罰球線與端線平行,它的外沿距離端線內(nèi)沿5.80m;這條線長為3.60m。罰球區(qū)是以罰球線中點為圓心,以1.80m為半徑,向限制區(qū)外畫出一個半圓區(qū)域,限制區(qū)內(nèi)的半圓畫成虛線。罰球區(qū)中第一條線距離端線內(nèi)沿1.75m,第一位置區(qū)的寬度為0.85m,并且與中立區(qū)域的始端相接。中立區(qū)域的寬度為0.40m,第二位置區(qū)與中立區(qū)域相鄰,寬度為0.85m,第三位置區(qū)與第二位置區(qū)相鄰,寬度也是0.85m。所有區(qū)域線條長度為0.10m,并垂直于罰球區(qū)邊線的外側。中圈畫在球場的中央,半徑為1.80m。三分投籃區(qū)距邊線1.25m,從端線引出兩條平行線,半徑為6.25m(量至圓弧外沿)的圓?。ò雸A)與兩平行線相交圓心距端線內(nèi)沿中點的距離為1.575m。如圖6所示為籃球場模型圖。

      (5)觀眾席看臺建模。觀眾席以NBA聯(lián)賽中球館的觀眾席為模板進行設計,分為三層。第一層為觀眾椅,椅子高度為410mm,椅子座位寬度為200mm,共三排。第二層和第三層都是階梯型座位,每級階梯的座位間由隔板隔開,每級階梯高為400mm,共14級階梯。如圖7所示為觀眾席看臺模型圖。

      4.2 漫游模塊實現(xiàn)

      首先,在Unity3D中新建一個工程文件,自帶一個主攝像機和一個自然光。然后,將制作好的模型導入Unity 3D,將制作的場景拖入制作窗口。

      (1)第一人稱漫游位移控制功能實現(xiàn)。首先,在場景中添加一個圓柱體,代表用戶。將主攝像機設定為跟隨圓柱體移動,通過控制場景中圓柱體的位移和攝像機的轉到,來實現(xiàn)用戶的位移和視角。通過代碼設置了向前行走、向后行走、橫向移動和跑動的速度,并對跳躍的高度進行了設置??刂频谝蝗朔Q向前位移和向左位移的關鍵代碼如下:

      if (Input.GetKey(KeyCode.W)) //設置鍵盤上的“W”鍵控制第一人稱視角向前移動

      { float x = Mathf.Sin(transform.eulerAngles.y * Mathf.Deg2Rad) * distance;

      float z = Mathf.Cos(transform.eulerAngles.y * Mathf.Deg2Rad) * distance;

      transform.Translate(new Vector3(x,0,z), Space.World); return true; }

      if (Input.GetKey(KeyCode.A)) //設置鍵盤上的“A”鍵控制第一人稱視角向左移動

      {transform.Translate(new Vector3(-distance, 0, 0)); return true;}

      (2)第一人稱漫游視角控制功能實現(xiàn)。第一人稱漫游視角控制,主要通過攝像機的視角轉動設定為跟隨鼠標的移動而移動。如圖8所示為第一人稱視角漫游場景圖。視角控制的部分關鍵代碼如下:

      public Camera cam;// 定義相機

      public MovementSettings movementSettings = new MovementSettings();//定義相機視角移動

      public MouseLook mouseLook = new MouseLook();// 跟隨鼠標移動而移動

      public AdvancedSettings advancedSettings = new AdvancedSettings();

      (3)碰撞檢測功能實現(xiàn)。碰撞檢測是虛擬漫游系統(tǒng)的重要功能,其作用是用來確保兩個不可穿透的對象互相不能共享相同的空間。首先,為圓柱體添加剛體,再通過為所有模型添加碰撞檢測Mesh Collider屬性來實現(xiàn)。

      4.3 交互模塊實現(xiàn)

      (1)查看預定功能實現(xiàn)。首先,新建一個button,將其命名為 “chakan”,將按鈕的文本名稱改為 “查看預定”。然后在按鈕上方新建一個Text文本框“yuding”。新建一個c#文件“mingdan”,通過代碼設置文本框初始不可見,編寫代碼,設置點擊按鈕后,如果文本框是顯示狀態(tài)則將其隱藏,如果文本框是隱藏狀態(tài)則將其顯示,然后將腳本拖到“chakan”的屬性欄中的Button(Script)中,再將拖到Button(Script)中的腳本文件拖到OnClick中,并設置點擊按鈕后執(zhí)行mingdan.sendMessageUpwards。如圖9所示為查看場館預定功能圖。部分代碼如下:

      void Start()

      {ga=GameObject.Find(ganame);

      ga.active=false; //設置開始可見性}

      void OnClick() //控制顯示和隱藏的方法

      {if (ga.active==true)//文本此時顯示

      {ga.SetActive(false);//點擊后隱藏}

      else if(ga.active==false)//文本此時隱藏

      {ga.SetActive(true);//點擊后顯示}}}

      (2)預定場館功能實現(xiàn)。首先,添加一個button和一個Input Filed。分別改名為“yuyue”和“yudingxinxi”,button控件的文本名稱改為“場地預定”。新建一個c#文件“xinxishuru”,編寫代碼使在Input Filed中輸入的內(nèi)容能在查詢預定的文本框內(nèi)顯示,將腳本拖到Input Filed屬性欄中的On Value Changed(String)中,設置對應的Text.text。

      (3)操作說明功能實現(xiàn)。首先,先新建一個button,命名為“caozuo”,按鈕文本名稱改為“操作說明”。然后在button上方新建一個Text文本框“kongzhi”。通過代碼設置文本框初始不可見,新建一個c#腳本“shuoming”,編寫代碼,設置點擊按鈕后,如果文本框是顯示狀態(tài)則將其隱藏,如果文本框是隱藏狀態(tài)則將其顯示,然后將腳本拖到“caozuo”的屬性欄中的Button(Script)中,再將拖到Button(Script)中的腳本文件拖到OnClick中,并設置點擊按鈕后執(zhí)行shuoming.sendMessageUpwards。

      (4)退出系統(tǒng)功能實現(xiàn)。首先,先新建一個button控件,改名為“guanbi”,文本名稱改為“退出”。然后新建一個c#腳本,編寫好代碼后保存,將腳本拖到Button(Script)中,再拖到OnClick中,并設置執(zhí)行tuichu.OnClick。退出漫游部分代碼如下:

      public void ontuichu()

      {Application.Quit ();// 退出漫游}

      5 結語

      虛擬現(xiàn)實漫游技術是一項應用廣泛的計算機綜合性技術,它利用計算機生成逼真的虛擬環(huán)境,通過漫游和交互讓用戶產(chǎn)生臨場感。本文使用3DS Max和Unity3D工具實現(xiàn)了綜合體育館虛擬漫游系統(tǒng),系統(tǒng)包括建模、漫游、交互三個重要組成部分,采用碰撞檢測技術保證了系統(tǒng)的真實效果。系統(tǒng)設計效果良好,場景逼真。

      參考文獻

      [1]范國華,等.基于Unity的虛擬校園漫游系統(tǒng)的設計與實現(xiàn)[J].安徽農(nóng)業(yè)科學,2016,44(1):325-327.

      [2]曲寶,等.基于Virtools的虛擬家居漫游系統(tǒng)的設計與實現(xiàn)[J].計算機工程與科學,2009.12:130-133.

      猜你喜歡
      體育館
      既有體育館場地擴聲系統(tǒng)提升改造
      城市綜合體育館比賽場地照明設計
      體育館提升改造工程電氣設計——以西安城市運動公園體育館為例
      河南省體育館近年承辦的主要賽事
      少林與太極(2020年1期)2020-07-14 02:32:49
      迷宮彎彎繞
      河南省體育館近年承辦的主要賽事
      體育館的考驗
      2022年卡塔爾世界杯場地——拉斯阿布阿邦體育館
      My Hobby
      牟定县| 汶上县| 平凉市| 乐业县| 东明县| 南丹县| SHOW| 汉中市| 白城市| 大厂| 大埔县| 岱山县| 郸城县| 广平县| 江安县| 仙居县| 息烽县| 安化县| 万州区| 元氏县| 兴和县| 磴口县| 南岸区| 平遥县| 鄂伦春自治旗| 灵川县| 黄陵县| 荔波县| 永胜县| 黄山市| 广南县| 丹寨县| 庄浪县| 越西县| 仁寿县| 布尔津县| 临泽县| 理塘县| 南漳县| 赤城县| 柳江县|