• 
    

    
    

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

      基于虛幻4引擎的長(zhǎng)白山虛擬現(xiàn)實(shí)場(chǎng)景地形制作

      2020-01-07 10:43:18肖巍馮時(shí)王選遙
      關(guān)鍵詞:虛幻關(guān)卡長(zhǎng)白山

      肖巍,馮時(shí),王選遙

      (1.長(zhǎng)春師范大學(xué) 教育學(xué)院,長(zhǎng)春 130032;2.吉林大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,長(zhǎng)春 130012)

      虛擬現(xiàn)實(shí)(VR)技術(shù)作為一門新興的綜合性信息技術(shù),在很多領(lǐng)域都發(fā)揮著不可或缺的作用[1]。虛擬現(xiàn)實(shí)技術(shù)應(yīng)用在文化、旅游方面是國(guó)家近些年提倡的“藝術(shù)與科技結(jié)合”的主要表現(xiàn)手段之一[2]。長(zhǎng)白山是東北文化旅游最強(qiáng)IP之一,借助科技手段打造長(zhǎng)白山虛擬現(xiàn)實(shí)文化旅游藝術(shù)體驗(yàn)平臺(tái),既可實(shí)現(xiàn)長(zhǎng)白山自然、人文以及歷史景觀的數(shù)字化游覽,又可以作為宣傳推廣東北文化旅游的數(shù)字化工具,無論從文化傳播推廣上還是促進(jìn)旅游產(chǎn)業(yè)發(fā)展上都具有非常重要的意義。

      1 虛擬現(xiàn)實(shí)體驗(yàn)平臺(tái)介紹

      長(zhǎng)白山虛擬現(xiàn)實(shí)體驗(yàn)平臺(tái)主要使用虛擬現(xiàn)實(shí)互動(dòng)技術(shù),在顯示層面使用基于次世代游戲引擎標(biāo)準(zhǔn)的貼圖和模型生成技術(shù),目的是從視覺效果上最大程度還原長(zhǎng)白山旅游景區(qū)的自然風(fēng)景效果。虛擬現(xiàn)實(shí)需要借助引擎實(shí)現(xiàn)最終顯示結(jié)果,制作流程上采取次世代游戲的方法實(shí)現(xiàn):制作腳本-執(zhí)行腳本-質(zhì)量監(jiān)控機(jī)制(技術(shù)標(biāo)準(zhǔn))-人員落實(shí)-項(xiàng)目時(shí)間表-小規(guī)模反饋與修正-大規(guī)模制作。該虛擬現(xiàn)實(shí)體驗(yàn)館由音樂(音效)、視覺顯示、實(shí)時(shí)互動(dòng)三個(gè)并聯(lián)部分構(gòu)成,在初期實(shí)施過程中,分別實(shí)現(xiàn),互不干擾,各部分趨于完成時(shí)將三部分整合到一起進(jìn)行調(diào)整。

      虛擬現(xiàn)實(shí)體驗(yàn)平臺(tái)在構(gòu)建自然環(huán)境的過程中,主要使用寫實(shí)性的視覺呈現(xiàn)方法,視覺還原部分使用基于三維掃描技術(shù)的互動(dòng)式建模方法(Interactive Modeling Method Based on Scanning Tech),簡(jiǎn) 稱IMM-BST[3]。該方法綜合了掃描模型生成法和三維游戲的手動(dòng)模型生成法,是現(xiàn)有各種建模方法中的首選。首先,對(duì)全景地貌,使用航拍技術(shù)配合地質(zhì)等高線方法生成置換/高度貼圖(Displacement Map),再使用換算方法將貼圖的黑-灰-白像素以低-中-高(閾值)的形式賦予多邊形模型,模型上的網(wǎng)格頂點(diǎn)與黑灰白像素一一匹配對(duì)應(yīng),而生成全面廣袤的地形。其次,對(duì)于植被與動(dòng)物,采取手動(dòng)建模+數(shù)字化貼圖的形式制作。最后,把制作好的地形和植被與動(dòng)物以“模板素材”的方式輸入到引擎中,在引擎中進(jìn)一步構(gòu)建長(zhǎng)白山風(fēng)光,直到最終封包、發(fā)布。

      2 地形制作方法

      長(zhǎng)白山北區(qū)地形較為復(fù)雜,在靠近山脈處多為玄武巖等材質(zhì),北坡景區(qū)主要集中于長(zhǎng)白山北麓的谷地中,自北向南逐步升高,上升趨勢(shì)較緩。但在長(zhǎng)白山北坡瀑布處有明顯的高低落差。地形景區(qū)分布從北向南海拔依次為:地下森林、綠淵潭、小天池、長(zhǎng)白山溫泉、盤山公路、長(zhǎng)白山北坡瀑布、天池。

      虛擬現(xiàn)實(shí)的地形構(gòu)建是整個(gè)平臺(tái)項(xiàng)目實(shí)施的關(guān)鍵,本文使用現(xiàn)實(shí)衛(wèi)星數(shù)據(jù)制作長(zhǎng)白山區(qū)的高度圖,并最終在虛幻4引擎中實(shí)現(xiàn)用戶體驗(yàn)效果。整體地形的制作步驟:搜集資料,整理高程圖(提取灰度圖作為置換貼圖的基礎(chǔ))——配合等高線圖進(jìn)行局部修正——進(jìn)行實(shí)地勘察——在虛幻中將高度圖生成地形——對(duì)比圖片、影片構(gòu)建地形。

      2.1 地形數(shù)據(jù)處理

      地形是自然界最復(fù)雜的景物之一,在虛擬現(xiàn)實(shí)中,三維真實(shí)感地形的繪制一直是國(guó)內(nèi)外圖形學(xué),CG娛樂產(chǎn)業(yè)領(lǐng)域關(guān)注的熱點(diǎn)[4]。地形的模擬可以分為兩類:真實(shí)地形與模擬地形[5]。真實(shí)地形是現(xiàn)實(shí)世界中真實(shí)地形的再現(xiàn),具有非常高的真實(shí)度,必須采用真實(shí)世界中的具體數(shù)據(jù)來構(gòu)造,這時(shí)多采用數(shù)字高程模型(Digital Elevation Model,DEM)[6],其本質(zhì)是在對(duì)數(shù)字地面模型的一種地形分量進(jìn)行考慮。

      本平臺(tái)項(xiàng)目主要考察長(zhǎng)白山地區(qū)的景區(qū)旅游資源,因此對(duì)于現(xiàn)實(shí)場(chǎng)景的還原度就是本項(xiàng)目的制作標(biāo)準(zhǔn)。地形數(shù)據(jù)的搜集分為宏觀衛(wèi)星數(shù)據(jù)搜集(GIS圖形搜集+等高線位圖、多地圖對(duì)比)和微觀實(shí)地踏查數(shù)據(jù)。項(xiàng)目所需長(zhǎng)白山全景高程DEM圖片,順時(shí)針分為ABCD4個(gè)點(diǎn),A點(diǎn)坐標(biāo)為北緯42°04′53.71 ″;東經(jīng)127°07′51.63 ″,B點(diǎn)坐標(biāo)為北緯42°04 ′53.71 ″,東經(jīng)127°07′24.64″,C點(diǎn)坐標(biāo)為北緯41°58′40.71″,東經(jīng)127°59′51.63″,D點(diǎn)坐標(biāo)為北緯41°58′40.71”東經(jīng)127°07 ′24.64 ″,該坐標(biāo)可把長(zhǎng)白山脈及北麓所有景區(qū)收入其中。

      對(duì)于DEM數(shù)據(jù)的拼接,三維地形表面工具可在不規(guī)則空間點(diǎn)的基礎(chǔ)上產(chǎn)生三維地形表面[7],它要求所輸入的數(shù)據(jù)必須具有X、Y、Z值,即經(jīng)度、緯度和海拔高度,應(yīng)用TIN插值方法,所輸出的是一個(gè)連續(xù)的柵格圖像文件(ERDASIMAGINE系統(tǒng)的DEM文件),每一個(gè)已知Z值的空間點(diǎn)在輸出的地形表面上保持Z值不變,而沒有Z值的空間點(diǎn),其輸出表面的Z值是基于其周圍的已知點(diǎn)插值計(jì)算獲得的。將數(shù)據(jù)補(bǔ)充方法作為距離加權(quán)內(nèi)插法,對(duì)各不確定點(diǎn)數(shù)值實(shí)施預(yù)測(cè),通過近鄰的已知點(diǎn)數(shù)值實(shí)施加權(quán)計(jì)算,獲取不確定點(diǎn)的數(shù)值,基于距離獲取所給的權(quán)重:

      式中,W(di)為權(quán)函數(shù);zi表示第i個(gè)已知點(diǎn)的數(shù)量;di為i點(diǎn)與不確定點(diǎn)間的距離。臨近離散點(diǎn)同不確定點(diǎn)間的分布情況不同,對(duì)f(x,y)產(chǎn)生不同的干擾作用。W(di)等于1/di2是最佳結(jié)果,di的平方的反比決定了W(di) 值的高低[8]。

      ARCGIS作為一個(gè)可伸縮的平臺(tái),為個(gè)人用戶也為群體用戶提供GIS的功能,使用該平臺(tái)可得到應(yīng)用于虛幻4引擎的高度圖,置換地形數(shù)據(jù)。本文使用國(guó)家綜合地球觀測(cè)數(shù)據(jù)共享平臺(tái)一號(hào)衛(wèi)星的數(shù)據(jù),使用ArcObjects組件式GIS開發(fā)技術(shù),通過ARCGIS整合GIS數(shù)據(jù),在軟件內(nèi)部最終轉(zhuǎn)換DEM高程圖為灰度位圖?;叶葓D的精度只對(duì)于山峰等凸起處的顯示起主要作用,對(duì)于谷底置換的高度不佳。為此,就需要等高線圖比較和根據(jù)實(shí)地探查再進(jìn)行修正。

      虛擬現(xiàn)實(shí)體驗(yàn)平臺(tái)是基于正常人視角的漫游項(xiàng)目,需要反復(fù)多次去長(zhǎng)白山調(diào)研,拍攝大量照片和素材作為后期制作參照。為了進(jìn)一步提升地形精度,制作團(tuán)隊(duì)分別于春、夏兩季4次上山采集。春季采集地形可在無積雪和樹葉遮擋的情況下拍攝山體起伏照片,夏季采集地形可記錄植被密度,查看實(shí)際環(huán)境中的遮擋關(guān)系,為劃分關(guān)卡做基礎(chǔ)。

      長(zhǎng)白山區(qū)的地理位置和地形較為敏感,無法通過衛(wèi)星數(shù)據(jù)獲得全部旅游地形信息,實(shí)地考察地形可為后期數(shù)字化地形構(gòu)建的提供重要參考依據(jù)。因此,團(tuán)隊(duì)使用經(jīng)緯儀交匯法、測(cè)距導(dǎo)線法,配合GPS測(cè)量手動(dòng)繪制地形圖,得到實(shí)地?cái)?shù)據(jù)。

      為了校準(zhǔn)數(shù)據(jù),可將ARCGIS的灰度圖數(shù)據(jù)導(dǎo)入World Creator2軟件,配合實(shí)地勘察數(shù)據(jù)手動(dòng)調(diào)整。World Creator2是基于細(xì)分算法的實(shí)時(shí)地形生成軟件,高度圖在該軟件中作為多邊形調(diào)節(jié)和預(yù)覽。根據(jù)比例尺對(duì)地形進(jìn)行定點(diǎn)調(diào)整,可實(shí)時(shí)監(jiān)測(cè)每個(gè)點(diǎn)的高度數(shù)據(jù),調(diào)節(jié)過程如圖1-圖4所示。圖1是ARCGIS中生成灰度圖所置換的地形高度,為未手動(dòng)校準(zhǔn)的地形,該地塊的海拔高度存在一定誤差,圖2為使用World Creator2手動(dòng)校準(zhǔn)過的地形。

      圖1 未手動(dòng)校準(zhǔn)的地形

      圖2 使用World Creator2手動(dòng)校準(zhǔn)過的地形

      將在World Creator2中調(diào)節(jié)后的多邊形重新輸出為灰度圖導(dǎo)出,重新置換地形高度。對(duì)比結(jié)果,圖3為制作的灰度圖在World Creator2中的顯示效果,精度為1∶50 000,圖4為谷歌地球的效果,精度為1∶250 000。

      圖3 1∶50 000精度灰度圖

      圖4 1∶250 000精度灰度圖

      2.2 地形數(shù)據(jù)導(dǎo)入

      虛幻4的場(chǎng)景地形并非是簡(jiǎn)單的多邊形,其基于多邊形顯現(xiàn)和優(yōu)化原理[9],但為了達(dá)到最佳顯示效率,虛幻引擎對(duì)場(chǎng)景地形做了一定的優(yōu)化并制定了一系列規(guī)則。

      如果按照1∶1還原地形,同時(shí)又為了節(jié)省計(jì)算機(jī)現(xiàn)實(shí)資源,虛幻4使用“Level”把整塊地形劃分為幾部分。對(duì)于超大地形來說,用戶在漫游時(shí)(指用戶視角身處場(chǎng)景當(dāng)中,非俯視),目力所及的空間或被山脈遮擋,或被植被遮擋,沒有必要整體顯示全部地形。這樣,虛幻引擎就可以指定隱藏和顯示的部分。如對(duì)一塊Landscape_A的正方形場(chǎng)景地形,其占地面積為81平方公里,按照1∶1比例還原。為了節(jié)約加載速度,把其平均分為3×3段,這樣每個(gè)地形的邊長(zhǎng)就是9公里。整個(gè)場(chǎng)景共分為9部分,每一部分可以作為一個(gè)獨(dú)立顯示的關(guān)卡進(jìn)行分別加載,那么每一個(gè)關(guān)卡就是9平方公里。把關(guān)卡按照引擎可讀取的X,Y方向進(jìn)行坐標(biāo)軸分布,分別命名為L(zhǎng)andscape_A_X0_Y0,依此類推,直到Landscape_A_X2_Y2。假設(shè)用戶的出生點(diǎn)在Landscape_A_X0_Y0關(guān)卡中,如果該場(chǎng)景中存在山脈、植被、高樓或環(huán)境霧等具有遮擋視線作用的物體存在,那么理論上說,用戶是不可能看到Landscape_A_X2_Y2這么遠(yuǎn)的距離。因此,只需加載Landscape_A_X0_Y0和與之臨近的Landscape_A_X0_Y1、Landscape_A_X1_Y1、Landscape_A_X1_Y0。

      虛幻4引擎對(duì)于外部地形數(shù)據(jù)有著嚴(yán)格的要求和標(biāo)準(zhǔn)。對(duì)于本項(xiàng)目來講,地形功能下的“Scale”選項(xiàng)下的Z值、“Section Size”、“Section per Component”、“Number of Component”、“總體分辨率”、“總組件”參數(shù),它們制約了外部導(dǎo)入地形的精度和比例大小,也決定了整體讀取速度和漫游體驗(yàn)效果。在虛幻4的地形編輯器中,從外部導(dǎo)入的地形依據(jù)節(jié)省顯示資源的原則,需要將之被劃分為幾個(gè)Component,即地形組件,其作用是分割整塊地形,便于為關(guān)卡劃分提供便利。如果該場(chǎng)景地形中并無其余“靜態(tài)網(wǎng)格”多邊形組件,則地形是該場(chǎng)景中唯一組件,則地形等于組件;如果將之分為不同組件,則地形關(guān)卡等于每個(gè)組件。

      用戶還可以對(duì)每個(gè)地形組件中分段的種類進(jìn)行進(jìn)一步細(xì)分。引擎提供了1×1和2×2個(gè)分段。虛幻4地形的優(yōu)化方法基于LOD技術(shù)。如果把一個(gè)場(chǎng)景劃分為4個(gè)組件,每個(gè)組件下再劃分為4個(gè)分段,每個(gè)分段中所提供的多邊形支持就可以通過1×1和2×2進(jìn)行選擇。1×1個(gè)分段意思是每個(gè)組件的多邊形數(shù)量等于分段的數(shù)量,那么整個(gè)地形組件多邊形數(shù)量是16,2×2的意思是每個(gè)組件之中最大可被放入4個(gè)多邊形,最小可放入1個(gè)多邊形,那么整個(gè)地形組件多邊形的數(shù)量就是4-16。如果整個(gè)場(chǎng)景占地面交較小,為了提升顯示精度,則可以使用1×1,本項(xiàng)目場(chǎng)景較大,為了提升加載速度,使用2×2個(gè)動(dòng)態(tài)分段。

      本項(xiàng)目基于實(shí)際高度圖進(jìn)行置換導(dǎo)入,對(duì)于外部高度圖,虛幻4引擎要求地形必須為偶數(shù)頂點(diǎn),按照分段的最小頂點(diǎn)數(shù)量計(jì)算,1個(gè)分段必須具備9個(gè)多邊形,共16個(gè)頂點(diǎn),那么虛幻4引擎最優(yōu)顯示的組件、分段、頂點(diǎn)數(shù)量的最小可識(shí)別單位計(jì)算方式為:1個(gè)地形具有2×2個(gè)分段,每個(gè)分段有12×12個(gè)多邊形,整體有13×13個(gè)頂點(diǎn)。那么整體的地形尺寸就可以依據(jù)以下公式類推:

      式中,S為虛幻4引擎整體地形頂點(diǎn)數(shù)量,該值可確定整個(gè)場(chǎng)景地形大??;Sq為每個(gè)分段占有四邊形的數(shù)量;Cs為每個(gè)組件的分段數(shù)量;C為組件數(shù)量。

      虛幻4引擎按照灰度圖中像素點(diǎn)的灰度值計(jì)算生成地形高度Z值。在讀取灰度圖時(shí),虛幻4引擎把灰度共分為512級(jí),即高低落差可置換512個(gè)Z方向單位,其中黑色置換為最低點(diǎn),灰色不置換,白色置換為最高點(diǎn)。若按米為單位換算,則黑色像素所在位置為-256米,白色像素所在位置為256米,灰色像素所在位置不進(jìn)行高度置換,如圖5所示。如果不改變虛幻4引擎的Z值,則引擎只能置換512米的高度落差。根據(jù)團(tuán)隊(duì)測(cè)量,長(zhǎng)白山北景區(qū)內(nèi)部最低點(diǎn)與最高點(diǎn)落差為1 500米左右,因此需要在虛幻4引擎中修改Z值,由默認(rèn)的100改為293,才能與實(shí)際測(cè)量高度匹配,確保置換地形海拔高度正確。

      圖5 灰度圖在虛幻4引擎中的地形高度值置換

      2.3 地形關(guān)卡劃分

      對(duì)于長(zhǎng)白山北麓地形,一次性加載全部地形數(shù)據(jù)關(guān)卡會(huì)占用大量系統(tǒng)資源,對(duì)于普通用戶來說無法達(dá)成流暢體驗(yàn)。為此,本文使用三維游戲的制作方法,將大塊地形劃分為關(guān)卡(Level)分別讀取。關(guān)卡在虛幻4中是一個(gè)十分寬泛的功能。用戶可以把任意物體存放在其中,以備隨時(shí)調(diào)用。本項(xiàng)目將關(guān)卡類別分為:植被、建筑、DrawCall、流體、地形。

      為了緩解制作和讀取壓力,將地形拆分,使用流送方式建立關(guān)卡并分段讀取信息的技術(shù)稱之為World Composition。它旨在簡(jiǎn)化大型世界場(chǎng)景的管理。其目的之一是避免使用單一獨(dú)立關(guān)卡存儲(chǔ)流送信息,再就是它可以避免在超大地形上處理所有地形數(shù)據(jù)造成的效率低問題。持久關(guān)卡不存儲(chǔ)任何流送信息,而是掃描文件夾并將找到的所有關(guān)卡視為流送關(guān)卡。每個(gè)流送關(guān)卡的信息存儲(chǔ)在包頭中,不用把關(guān)卡加載到內(nèi)存中,World Composition就能讀取這些信息。默認(rèn)情況下,除持續(xù)關(guān)卡之外的所有關(guān)卡都會(huì)在World Composition中卸載其中地形按照1:1還原,北麓共占地面積127×127平方公里,劃分為36(6×6)個(gè)獨(dú)立關(guān)卡,每個(gè)關(guān)卡為4 033×4 033個(gè)像素點(diǎn),如圖6所示。

      圖6 基于高度圖的長(zhǎng)白山北麓地形關(guān)卡劃分

      經(jīng)過計(jì)算與壓力測(cè)試,項(xiàng)目的每個(gè)獨(dú)立地形關(guān)卡頂點(diǎn)為4 033×4 033,每段有63個(gè)多邊形,每個(gè)組件中分為2×2個(gè)段數(shù),每個(gè)組件的大小是126×126,共分為32×32個(gè)組件。這樣就可以把北麓的占地面積小的綠淵潭場(chǎng)景和小天池場(chǎng)景放在一個(gè)獨(dú)立地形關(guān)卡中,便于后期整體隱藏。

      按照地形與像素面積1∶1計(jì)算,每個(gè)關(guān)卡為4.3×4.3公里。關(guān)卡的占地面積可以容納小型場(chǎng)景,如小天池,綠淵潭。而對(duì)于長(zhǎng)白山天池等大型場(chǎng)景則需要一次性加載所有關(guān)卡資源,并同時(shí)卸載最北側(cè)的3個(gè)場(chǎng)景:地下森林、綠淵潭和小天池,它們由于距離過遠(yuǎn),而且為了節(jié)省資源,此時(shí)無需顯示。

      3 結(jié)語

      要得到長(zhǎng)白山區(qū)相對(duì)更加精確的地形,則可以選擇無人機(jī)飛行采集數(shù)據(jù),之后再精確建模。虛幻4引擎可以做到復(fù)制現(xiàn)實(shí)中的一草一木,并使用PBR渲染出圖,理論上說用戶在虛擬世界的體驗(yàn)已經(jīng)與現(xiàn)實(shí)世界無異。但礙于當(dāng)下的VR外部設(shè)備和顯示技術(shù),即使按照現(xiàn)實(shí)中復(fù)原場(chǎng)景,也無法實(shí)現(xiàn)流暢的實(shí)時(shí)預(yù)覽效果。隨著8K技術(shù)的普及,VR外圍設(shè)備還有一段路要走,穩(wěn)定幀數(shù)、高分辨率和傳輸速率都有待提升[10]。

      地形構(gòu)建只是構(gòu)建場(chǎng)景中的第一步,并非場(chǎng)景全部,如要達(dá)到基本真實(shí)的用戶體驗(yàn),還要配合靜態(tài)網(wǎng)格和后期效果處理與優(yōu)化才能得到較好的效果。

      猜你喜歡
      虛幻關(guān)卡長(zhǎng)白山
      海龜上岸
      雨中(外二首)
      滇池(2022年7期)2022-06-29 21:07:02
      春天越來越虛幻
      漫步四季,探索不一樣的長(zhǎng)白山
      長(zhǎng)白山冊(cè)封始于金代
      《頭號(hào)玩家》里的虛幻與現(xiàn)實(shí)
      只存在于設(shè)計(jì)圖上的虛幻建筑
      2015年高考江蘇省物理卷一道題的3種解法
      妙題巧解
      嵐霧情吻長(zhǎng)白山
      绩溪县| 舒城县| 娄烦县| 虎林市| 会东县| 罗平县| 鹿泉市| 寿宁县| 普宁市| 县级市| 崇文区| 宁海县| 建瓯市| 婺源县| 柳州市| 丰宁| 监利县| 三穗县| 仁怀市| 锦屏县| 原阳县| 黄山市| 古田县| 温州市| 日土县| 中江县| 建湖县| 长子县| 宁强县| 衡山县| 六安市| 大港区| 瓮安县| 望都县| 南川市| 南京市| 阿克陶县| 云浮市| 两当县| 邳州市| 德保县|