胡雨珠 黃泰怡 謝能 王磊 樊碧君 姜寬 王楠楠
【摘要】在研究Leap motion偵測數據生成運動信息的基礎上,以赫哲族為例建設民族聚落,運用Leap Motion與漫游系統進行體感式交互,提高赫哲族文化的辨識度。通過前期數據的采集及總結,完成了對赫哲族建筑/文化體驗等模型的構建;通過制作漫游、游戲程序等操作進行交互試驗,增強用戶臨場感,增強赫哲族文化國際性及人與人之間傳播能力;提出了對貼圖、LOD、DOF、碰撞等技術的優化新方案,改善交互體驗,實現了對民族文化的信息數據化、虛擬現實化、體感交互化式的保護。
【關鍵詞】Leap motion;交互設計;虛擬現實;數字化;民族聚落
【中圖分類號】TP391.4 【文獻標識碼】A
引言
作為跨界民族的赫哲族歷史悠久,慢慢褪去了表演的華服,淡出我們的世界。時至今日,越來越少的人穿著魚皮衣,魚皮技藝幾近失傳,赫哲語成為我國瀕危語言之一,服飾幾乎同漢族一般無二,更別說其習俗、信仰……由此可見赫哲文化所處境遇之嚴峻。本研究借助數字化效力對其進行高效、及時的搶救,主要包括繪圖數字化、建模數字化、虛擬現實數字化、信息系統數字化。Leap Motion體積輕便小巧,成本低廉、性能穩定,壽命長,精確定位手部動作,不易受周圍環境磁場的影響,可移植性強本研究計劃通過采用Leap Motion,以人機交互融入數字化漫游的方式達到操作者與虛擬環境實現沉浸式交互,增加體感體驗的效果。首先建立赫哲族聚落漫游系統,然后融合leap Motion交互體驗,通過Leap motion獲取的偵測數據創建Leap motion右手笛卡爾坐標系,刻畫手部坐標,模擬手部行為運動,進而完成狩獵文化、捕魚文化、魚皮衣文化等一系列交互行為。
一、赫哲族模型的創建
(一)建模模塊規劃
本研究采用3DMax對赫哲族建筑物進行三維建模,主要分為建筑模型、工藝品模型、交通工具模型、生活模型,最后組成赫哲系列三維場景。整體流程包括無人機掃描以及現場拍攝采集建筑信息、導入Scene軟件生成的點云數據形成建筑輪廓,導入3DMax軟件繪制三維模型,3DMax紋理貼圖處理、模型輸出。流程如圖1。
(二)原數據采集
建筑布局數據:向有關部門提取圖紙資料,包括大比例地形圖文件、規劃布局等,利用Auto CAD進行校正。
建筑形態數據:利用無人機遙感測繪技術獲取聚落外部形態數據,以圖片信息、文字信息以及遺留模型信息為數據源,獲取內部形態數據。
紋理數據:紋理屬精細模型外在的直觀表現,所有數據均來自現狀照片。
(三)模型的建立
依據遙感影像和圖形文字,打造赫哲族聚落系統,操作簡單,還原真實度、模型精度高,擁有完美的細節呈現,在建模過程中文件的兼容及傳輸方面具有較大優勢,分項過程如下。
(1)外觀設計:根據心理學第一印象效應現象反映,本研究注重外觀設計,對涉及的實際場景進行劃分并設計功能區塊,結合文化旅游方案設計建筑物與景觀、特有工藝品等之間的空間布局,力求在觀者的頭腦中形成美好的聚落形象并占據主導地位。
(2)小模型制作:模型是整個場景中不可或缺的組成部分,本研究計劃需要模型包括建筑、工藝品、交通工具、生活用品。利用無人機形成的外觀圖,運用3dMax命令面板及屬性勾勒模型基本輪廓。
(3)紋理貼圖:給所建三維模型中加入紋理貼圖屬性,運用Photoshop對材質貼圖繪制紋理并設置透明度、銳化邊緣等參數,生成圖像紋理文件,將材質球賦予模型完成紋理貼圖,使模型富有材質感。
(四)漫游模塊實現
Unity3D支持以可視化編程為手段完成各種開發工作,可導入3Dmax模型,支持C#、C++、Java Script等語言,具備Leap Motion控制器的完美接口。因此,本研究使用Unity3D游戲引擎作為漫游系統開發平臺。
依據所采集的當地人文、地質等各種實際數據情況,從Goody Gis中提取“.DWG”格式的CAD三維等高線,在Photoshop中依據等高線的不同高差,對區域內進行不同灰度的填充,然后加以模糊濾鏡使過渡效果更加自然,導出“.RAW”格式的圖片。將處理好的灰度圖直接導進Unity3D,運用自帶的Terrain地形編輯器,創建地形后,完成植被樹木的種植、水資源加載、添加碎石、枯木等素材,進一步完善場景仿真;設置天空盒子,光照系統、粒子系統等,添加第一人稱攝像機,完成赫哲族虛擬漫游地形的構建。
二、赫哲族聚落交互設計與實現
本系統里Leap Motion會把用戶從傳統的輸入設備轉變成自然和諧的手勢輸入,利用手勢識別完成狩獵、捕魚等交互,在形式上和空間上都提供給用戶多種交互體驗,得到全新的感官感受,增強交互過程中的參與感和投入感。手勢控制過程如圖2-1:
(一)系統界面
以初始界面為媒介向用戶傳遞情感,是界面設計的魅力所在。利用Photoshop處理圖片素材,以自帶框架結構詮釋赫哲族民族元素的界面,通過按鈕對用戶進行心里暗示和引入指導,以便用戶了解和使用本系統。
(二)建筑虛擬場景
利用建模技術、Unity強大的虛擬交互能力,還原建筑及建筑周邊的環境形態、赫哲文化生活、工作場景、衣著服飾、使用器具、風俗習慣等,形成與建筑息息相關的文化圈,以直觀的表現,豐富互動趣味性,解決抽象思維與建筑實體之間的接觸問題,輔以移動終端為信息傳達的媒介,為赫哲族非物質文化遺產的傳承與發揚提供有力途徑,提高公眾對赫哲族文化遺產的關注度,并從被動的了解轉化為主動的探索。虛擬場景效果如圖2-2:

(三)狩獵交互設計
赫哲族作為東北少數的狩獵民族之一,狩獵是過去赫哲人的一項主要經濟來源。狩獵活動一般以集體為單位進行,大多將鹿和各種細毛獸作為獵取對象,主要采取弓箭射殺,陷阱圍獵等方法。
在創建鹿、魚、弓箭等靜態模型基礎上,進行關鍵幀動畫設置。通過調整動畫時間,改變部分結構的位移、角度等參數,自動或手動設置關鍵幀,由軟件自動生成其他幀的模型狀態,最終生成弓箭連貫動畫。不同于弓箭模型動畫的制作方法,動物動畫首先要對動物的靜態三維模型制作并綁定骨骼,調整權重完成蒙皮;然后依次設置骨骼的動作形態作為關鍵幀,生成鹿連貫動畫。需注意的是,設定動物模型的動作形態必須符合其生理與運動特征,為此,本研究分別為其設立了站立、飲食、死亡、奔跑等動作幀,使動畫更加完整逼真。
將3Dmax中鹿、魚、弓箭等3D模型以FBX連帶動畫格式導出,加載到Unity場景文件中,擺放至合適的位置,調整大小,利用Animation組件設置鹿初始動畫,將Wrap Mode屬性設定為Loop模式,完成鹿的動作循環,添加第一人稱并綁定弓箭,以便弓箭對角色自動跟隨,添加腳本代碼并完成碰撞器的設置。使用PlayMaker插件中iTween組件I Tween Move To 動作,設定Path路徑通道,在場景中添加諸多Cube,取消Mesh Renderer屬性,作為不可移動的位置點,最終將眾多不可移動點串連成路徑;創建空物體,添加Box Collider碰撞器,勾選Is Trigger屬性,激活觸發器,利用PlayMaker插件中Trigger Event事件、Play Animation動作完成碰撞觸發、動作切換等功能的實現。
程序運行,控制人物逐步靠近野鹿,在弓箭最大射擊范圍內拉動弓箭、射擊,若擊中目標,目標倒下,其余目標根據iTweenPath 路徑進行逃離,逃離過程觸發陷阱碰撞,失落陷阱。至此,赫哲族狩獵過程虛擬化展示得以實現。
(四)捕魚交互設計
虛擬現實技術為表現物體其本來的重量、觸覺等非視覺感受提供了技術手段的支持,能根據研究數據、文獻記載和實物測量,模擬展示已經瀕臨滅絕的非物質文化遺產。
Leap Motion通過雙高清攝像頭將拍攝的立體紅外圖像轉換成基本單位-幀數值,將采集到的手掌、手指的位置和其他信息保存在一幀(Frame)當中,并分配唯一ID號碼作為標記,獲取的每一幀數據,自動將各關鍵點坐標從手指局部坐標系轉換成右手笛卡爾坐標系。依照每幀和前幀檢測到的數據,連接相鄰數據,生成手部運動信息,獲取3組x,y,z軸的數據,再轉換成Unity單位,成為可識別的向量,實現手勢模型輸入。
Unity虛擬現實平臺模擬赫哲族非物質文化活動,集合Leap Motion的手勢體感交互完成漁獵活動,再現漁獵技藝。依據前期的Terrain生成的河流走勢,添加Daylight Water,調整相關屬性,完成天空盒效果反射、倒影等效果,加入3dmax完成的樺皮船、淡水魚模型,添加第二個第一人稱膠囊,場景布置完成;再進行Leap Motion與Unity3D 體感開發與集成,當Leap Motion接入電腦的USB后,打開Leap Motion SDK程序,啟動控制器,查看設備連接狀況,圖標顯示綠色即為正常,可進行下一步開發應用,在Unity中找到Leap Motion文件下Prefabs,將Hand Controller預制體添加到場景中。作為手勢控制器,Leap Motion提供了很多手部模型,在文件HandModelsHuman下找到仿真度較高的左右手模型,將PepperLightFullLeftHand和PepperLightFullRightHand拖到場景中(這是不帶物理屬性的),此時仍需把帶有物理屬性的手放到場景中去,在HandModels Physical文件夾把里面的RigidRoundHandLeft和RigidRoundHandRight都拖到場景中,然后將模型拖至HandController控制器Hand Controller腳本上,完成左右手模型的綁定,添加相應的腳本代碼,手勢運動程序得以實現,操作手部動作控制魚叉運動,形成捕魚動作,在魚叉叉頭上設置碰撞器,叉頭與魚碰撞一起,魚叉與魚結合,實現手勢捕魚過程,如圖2-3.
如何實現與物體的交互是一大難點,手勢輸入的手部模型與其他物體無法直接發生碰撞,經過測試發現,物體與手勢觸發,Rigidbody與Collider兩種物理屬性缺一不可,還需掛上Grabbable Object腳本完成抓取的程序設定.Collider有Box Collider、Capsule Collider等屬性,不同物體采用不同的碰撞器,碰撞的效果也不一樣,比如給魚Box Collider屬性時,手勢與魚碰撞時容易被手勢彈飛,當給Capsule Collider屬性時,調整膠囊碰撞器的軸向,使膠囊體剛好跟魚本身重合,當手勢與之碰撞時,就能有效解決碰撞的問題。魚叉同樣方法處理,給場景添加HandControllerSandBox,限定物體運動區域。
(五)碎片虛擬化拼接
通過Leap Motion獲取的數據,進行手部行為的模擬運動,創建右手笛卡爾坐標系,分別刻畫手部以及碎片坐標,運行Leap Motion插件時,系統以幀為單位反饋感應,給以用戶流暢體驗,每一幀中包含很多參數,其中包括tipPosieion將指尖位置與碎片位置形成對應關系,方便快捷精準捕捉,賦予碎片代碼屬性,手部捕捉碎片通過平移、旋轉、空間對接完成。
三、優化設計
(一)動態加載優化
采用AssetBundle 動態加載機制,將Unity3D中文件、資源導成特定文件格式(.unity3D),用戶進入漫游時,優先加載角色周邊場景環境,其他文件在需要時自動加載到場景中,減少內存消耗。
(二)運行速率優化
采用LOD技術實現在不同層次、不同視角條件下,采用不同精細程度的模型代表同一物體,大量減少繪制的頂點數目,對漫游場景進行優化,提高場景運行速率。
(三)渲染效率優化
采用遮擋剔除技術,降低Batches,對不在攝像機視野范圍內的模型不渲染,加快渲染效率,調整相機屬性Field of View、Cilpping Planes值實現。
(四)網格材質合并
未經處理的模型具有很多相同Shader的材質球,從而產生了大量的Batches,占用CPU的運算時間,加大內存占用量,當模型量大時,會造成程序卡頓,因此需要把具有相同Shader的材質球合并,采用Mesh Baker插件,以減少Batches的產生。
四、結語
在赫哲族文化瀕于自然消失的背景下,本研究介紹了赫哲族文化數字化保護技術,針對數字化保護方法,采用信息化、數據化、虛擬化、交互化結合方式,分別對這四種方式的關鍵技術進行詳細介紹;同時,根據族文化特性提出了虛擬系統融合Leap motion戰略,制作相應漁文化腳本代碼,打破傳統方式,實現人機交互,增強用戶臨場感,增強赫哲族文化國際性及人與人之間傳播能力。這種途徑在數字化時代背景下利用體感交互、增強現實、虛擬現實更具真實感且有效的保護赫哲族文化。
參考文獻:
[1]顏明霞.非物質文化遺產保護與旅游開發的互動發展模式研究[J].創新,2014(3):61-64
[2]李春曉.基于Unity 3D的中國古代農耕虛擬場景智能展示平臺[J].農業工程學報,2017:308-314.
[3]袁田琛.基于Leap Motion 和Unity3D的體感游戲開發與集成[J].電腦知識與技術,2015(13):201-204.
作者簡介:胡雨珠(1997-),女,漢族,吉林省四平市,本科生,研究方向為工程管理bim應用;黃泰怡(1996-),女,布依族,云南省德宏州,本科生,研究方向為工程管理bim應用;謝能(1995-),男,漢族,廣西南寧市,本科生,研究方向為工程管理bim應用;王磊(1994-),男,漢族,內蒙古赤峰,大連民族大學計算機科學與工程學院碩士研究生,主要從事主要從事計算機視覺與大數據技術研究;王楠楠(1980-),女,講師,研究方向為圖形圖像處理技術。