蔣艷娜 郭新宇 楊寶祝等
摘要: 采用交互式參數(shù)化建模方法對(duì)西瓜生長模型建模,基于Unity3D開發(fā)平臺(tái),運(yùn)用虛擬現(xiàn)實(shí)、仿真交互技術(shù)以任務(wù)驅(qū)動(dòng)的方式實(shí)現(xiàn)了春大棚西瓜生長周期虛擬展示及互動(dòng)體驗(yàn)系統(tǒng)。該系統(tǒng)具有良好的用戶操作界面以及互動(dòng)體驗(yàn)環(huán)節(jié),可以讓農(nóng)民提高生產(chǎn)技能、了解西瓜生產(chǎn)過程,從而推進(jìn)西瓜產(chǎn)業(yè)的發(fā)展。
關(guān)鍵詞: Unity3D;大棚西瓜;虛擬現(xiàn)實(shí)技術(shù)
中圖分類號(hào): S126 文獻(xiàn)標(biāo)志碼: A
文章編號(hào):1002-1302(2015)08-0416-03
虛擬現(xiàn)實(shí)技術(shù)別稱靈境技術(shù),為用戶提供視覺、聽覺、觸覺等感官模擬,讓用戶沉浸在計(jì)算機(jī)生成的三維虛擬世界中,確保用戶可以及時(shí)、無限制地通過語言、手勢等方式與三維空間內(nèi)的事物進(jìn)行實(shí)時(shí)交互 [1]。虛擬現(xiàn)實(shí)技術(shù)最初應(yīng)用于軍事、航空航天領(lǐng)域,近年來已經(jīng)廣泛應(yīng)用于工業(yè)、建筑設(shè)計(jì)、文化娛樂、教育培訓(xùn)等領(lǐng)域。西瓜屬葫蘆科,原產(chǎn)于非洲,喜溫耐熱,1年生蔓性草本植物,在我國栽培歷史悠久 [2]。我國是世界上最大的西瓜生產(chǎn)國,同時(shí)也是西瓜消費(fèi)大國。近年來,隨著人們生活水平的提高,水果在我國居民食物消費(fèi)中所占的比例明顯增加,西瓜作為重要的鮮食水果,消費(fèi)需求持續(xù)快速增長 [3]。我國西瓜種植面積日益擴(kuò)大,尤其是在一些城市的近郊,西瓜成為促進(jìn)農(nóng)民增收的主要經(jīng)濟(jì)作物。西瓜種植技術(shù)培訓(xùn)課程也在各農(nóng)林高校、職業(yè)院校以及農(nóng)業(yè)技能推廣站廣泛開展。傳統(tǒng)的西瓜種植培訓(xùn)主要采用教科書、上課板書、視頻等方式,主要存在以下缺點(diǎn):(1)傳統(tǒng)教育培訓(xùn)采用教師口頭授課或多媒體授課,機(jī)械式灌輸教學(xué)內(nèi)容,講解形式枯燥;(2)學(xué)員須在同一地點(diǎn)集中接受同樣內(nèi)容的培訓(xùn),教學(xué)缺乏靈活性;(3)在傳統(tǒng)教學(xué)過程中,西瓜種植生長過程涉及到的農(nóng)事耕作、苗床鋪設(shè)、大棚開溝、接穗及砧木種子的挑選、消毒、播種等多個(gè)實(shí)踐環(huán)節(jié)費(fèi)時(shí)費(fèi)力且成本較高。綜上所述,傳統(tǒng)的培訓(xùn)模式在人力、物力、互動(dòng)性等方面的缺陷在一定程度上限制了西瓜種植技術(shù)的傳播。本研究基于Unity3D開發(fā)平臺(tái),以西瓜春大棚技術(shù)規(guī)程為對(duì)象,設(shè)計(jì)了1款寓教于樂的西瓜實(shí)訓(xùn)系統(tǒng),該系統(tǒng)綜合了計(jì)算機(jī)動(dòng)畫、虛擬現(xiàn)實(shí) [4]、人機(jī)交互以及網(wǎng)絡(luò)技術(shù),有效整合了西瓜生長過程管理所涉及的農(nóng)學(xué)知識(shí),為西瓜種植培訓(xùn)提供了虛擬互動(dòng)電子教科書。
1 春植西瓜大棚實(shí)訓(xùn)系統(tǒng)設(shè)計(jì)
本系統(tǒng)適用于北京市大興區(qū),所以地理?xiàng)l件、土壤條件、氣候條件已經(jīng)基本確定。本系統(tǒng)根據(jù)西瓜實(shí)際種植生長時(shí)序與虛擬生長時(shí)序之間的比例建立時(shí)序?qū)?yīng)關(guān)系,對(duì)西瓜生長過程進(jìn)行模擬。采用任務(wù)驅(qū)動(dòng)方式,提高用戶的興趣點(diǎn)、參與度。該系統(tǒng)開始運(yùn)行之后,彈出完成相應(yīng)任務(wù)的提示信息,任務(wù)完成之后,日歷動(dòng)態(tài)改變并觸發(fā)完成下一個(gè)任務(wù),既保證了西瓜種植的科學(xué)性,又增強(qiáng)用戶互動(dòng)體驗(yàn)效果。圖1展示了春植西瓜大棚技術(shù)流程,圖中標(biāo)注的時(shí)間是系統(tǒng)仿真西瓜生長過程的模擬時(shí)間。
2 關(guān)鍵技術(shù)
根據(jù)西瓜種植技術(shù)規(guī)程,利用交互式參數(shù)化建模方法構(gòu)建西瓜的三維虛擬模型,結(jié)合二三維交互、動(dòng)畫及場景渲染技術(shù),建立了春大棚西瓜種植虛擬實(shí)訓(xùn)系統(tǒng)(圖2)。
2 1 交互式植物參數(shù)化三維建模方法
構(gòu)建西瓜生長過程中的三維模型是春大棚西瓜種植虛擬過程可視化表達(dá)的關(guān)鍵步驟。植物三維建模方法多樣,針對(duì)不同的建模目的及應(yīng)用要求,不同的建模方法可取得不同的建模效果。其中,起步較早、影響力較大同時(shí)應(yīng)用較為廣泛的建模方法為參數(shù)化建模方法,該方法使用一組參數(shù)來表示植物主要器官及植株三維形態(tài)結(jié)構(gòu) [5]。通常以交互式的方式實(shí)現(xiàn)對(duì)參數(shù)的動(dòng)態(tài)調(diào)整和編輯,以達(dá)到修改模型三維形態(tài)的目的。從西瓜形態(tài)結(jié)構(gòu)上看,西瓜地上部主要由主蔓、側(cè)蔓兩部分構(gòu)成,蔓上著生葉子、花、果實(shí)、卷須等器官 [6]。西瓜蔓的橫斷面近似圓形,有棱角。瓜蔓有節(jié),節(jié)上著生葉片或側(cè)蔓。西瓜葉子由葉柄、葉片構(gòu)成,葉子呈羽狀、單片、互生、葉緣深缺刻,葉片表面有蠟質(zhì)、絨毛。本研究采用交互式參數(shù)化建模方法,首先使用Immersion G2LX三維數(shù)字化儀采集田間西瓜三維形態(tài)結(jié)構(gòu)數(shù)據(jù),構(gòu)建西瓜三維模型,通過定義葉脈曲線、葉片邊緣實(shí)現(xiàn)葉片特征的虛擬建模。最后按照典型西瓜的株型結(jié)構(gòu)生成西瓜植株模型。創(chuàng)建的西瓜各個(gè)時(shí)期的生長模型如圖3所示,需要將模型轉(zhuǎn)換為fbx格式,然后導(dǎo)入 Unity3D 場景中使用。
2 2 鼠標(biāo)拾取
鼠標(biāo)拾取指在屏幕上用鼠標(biāo)點(diǎn)擊某個(gè)物體時(shí),應(yīng)用程序能返回該物體的1個(gè)標(biāo)志、某些相關(guān)信息 [7]。本研究采用鼠標(biāo)拾取算法實(shí)現(xiàn)用戶與虛擬場景中的三維物體交互功能。先給需要進(jìn)行交互的物體綁定碰撞體mesh collider,然后將鼠標(biāo)拾取函數(shù)腳本綁定給該物體,在腳本中根據(jù)物體名進(jìn)行不同的響應(yīng)操作。OnMouseDown()、OnMouseOver()、OnMouseEnter()函數(shù)分別可以實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊、懸浮、進(jìn)入物體時(shí)的響應(yīng)操作。虛擬場景中砧木和接穗種子在石臺(tái)上曬種時(shí),通過鼠標(biāo)懸浮響應(yīng)函數(shù)實(shí)現(xiàn)將癟小、破損、蟲蛀、發(fā)霉的種子剔除的功能。在西瓜伸蔓期,對(duì)植株進(jìn)行修剪時(shí)采用二三維交互相結(jié)合的方式,點(diǎn)擊二維剪刀圖片,鼠標(biāo)光標(biāo)變換為剪刀,觸碰到西瓜植株待修剪部分時(shí),使用Tween Position實(shí)現(xiàn)待修剪部分下落到地面的動(dòng)畫,從而完成植株的修剪操作。圖4展示了伸蔓期西瓜植株修剪過程。
采用鼠標(biāo)拾取實(shí)現(xiàn)三維物體的拖動(dòng),算法基本思想為:首先將物體的世界坐標(biāo)系轉(zhuǎn)化為屏幕坐標(biāo)系,z軸不變。由于鼠標(biāo)的坐標(biāo)系是二維的,需要轉(zhuǎn)化成三維的世界坐標(biāo)系,然后計(jì)算鼠標(biāo)位置與物體的距離。當(dāng)按下鼠標(biāo)左鍵時(shí),獲取當(dāng)前鼠標(biāo)的二維坐標(biāo)系位置并轉(zhuǎn)化成三維坐標(biāo)位置,再加上鼠標(biāo)的移動(dòng)量得到物體應(yīng)該的移動(dòng)量并賦給物體的transform的position屬性,實(shí)現(xiàn)鼠標(biāo)拖拽三維物體的交互功能。例如,文中在配制營養(yǎng)土?xí)r鼠標(biāo)點(diǎn)擊草炭,拖拽到沙壤土中。通過距離碰撞檢測 [8],當(dāng)距離小于既定閾值時(shí),草炭消失,使用NGUI插件的TweenColor進(jìn)行顏色漸變,實(shí)現(xiàn)營養(yǎng)土配制混合效果。[ (W10][TPJYN4 tif]endprint
2 3 粒子系統(tǒng)
粒子系統(tǒng)采用有“生命”的微小粒子單元來模擬現(xiàn)實(shí)世界中的不規(guī)則物體,尤其是一些模糊、易擴(kuò)散的物體,如火、煙等 [9]。通過許多小粒子的組合,模擬出不規(guī)則物體的運(yùn)動(dòng)形態(tài),然后渲染顯示。粒子系統(tǒng)中的每個(gè)小粒子都有很多屬性,如大小、顏色、形狀、透明度等。具體每個(gè)小粒子的屬性則由該粒子系統(tǒng)具體模擬的物體決定。粒子系統(tǒng)是動(dòng)態(tài)的,系統(tǒng)中的每個(gè)小粒子的生命周期都是從“產(chǎn)生”到“活動(dòng)”再到“消亡”。隨著時(shí)間的推移,新粒子逐漸加入到系統(tǒng)中,“存活”的粒子不斷變化,舊的粒子逐漸死亡,從而實(shí)現(xiàn)粒子系統(tǒng)的模擬效果。本研究采用Unity3D自帶的粒子系統(tǒng)實(shí)現(xiàn)砧木、接穗種子浸種時(shí)水龍頭的流水動(dòng)畫。配制基肥時(shí)磷酸二銨、尿素、硫酸鉀等撒到農(nóng)家肥上的動(dòng)畫,大棚熏棚時(shí)點(diǎn)燃煙劑后的冒煙效果以及西瓜開花期噴施的葉面肥,都是通過調(diào)整粒子系統(tǒng)的相應(yīng)參數(shù)實(shí)現(xiàn)其逼真的可視化表達(dá)。圖5展示了部分粒子系統(tǒng)實(shí)現(xiàn)的效果。
2 4 視頻播放
用戶在互動(dòng)體驗(yàn)過程中,若是根據(jù)系統(tǒng)中的簡單提示信息不能完成任務(wù)或者想更加系統(tǒng)詳細(xì)地了解西瓜種植流程,可以在場景任意漫游的同時(shí)觀看視頻課件,既能夠娛樂放松,又能系統(tǒng)學(xué)習(xí)。Unity3D的視頻文件通過Apple QuickTime導(dǎo)入,支持的文件類型是QuickTime。在Windows操作系統(tǒng)下導(dǎo)入視頻需要安裝QuickTime播放器。將視頻資源導(dǎo)入到 Unity3D 場景中,建立音頻源AudioSource、影片紋理 MovieTexture,影片紋理是從1個(gè)視頻文件中創(chuàng)建的動(dòng)畫紋理,放置1個(gè)視頻文件在項(xiàng)目的Asset文件夾中,可以導(dǎo)入要使用的視頻,音頻源在場景中播放音頻剪輯AudioClip。使用C#腳本控制視頻的播放暫停,圖6是Unity3D場景中人工授粉視頻截圖。
2 5 模型動(dòng)態(tài)實(shí)例化
西瓜植株生長過程中要經(jīng)歷定植期、伸蔓期、開花期、結(jié)果期、成熟期等過程,若是在場景中手動(dòng)擺放模型,不僅耗時(shí)費(fèi)力,而且資源占用空間大。通過對(duì)Unity實(shí)例化相關(guān)知識(shí)進(jìn)行研究,本研究采用模型實(shí)例化算法解決上述問題。通過腳本動(dòng)態(tài)實(shí)例化所需模型,并設(shè)置實(shí)例化的西瓜植株的行數(shù)、列數(shù)、行間距、列間距等信息,為不同時(shí)期的西瓜植株命名,然后通過動(dòng)態(tài)查找物體名的方法銷毀之前實(shí)例化的模型,再實(shí)例化新的模型。圖7為采用C#腳本動(dòng)態(tài)實(shí)例化的西瓜植株。
3 結(jié)論
本研究依據(jù)春植西瓜大棚技術(shù)規(guī)程,建立不同生長時(shí)期
的西瓜植株模型,對(duì)西瓜種植進(jìn)行虛擬現(xiàn)實(shí)表達(dá),構(gòu)建了簡單方便、開發(fā)成本低的春植西瓜大棚實(shí)訓(xùn)系統(tǒng)。該系統(tǒng)具備一定程度的真實(shí)感、沉浸感以及交互性,提高了用戶的學(xué)習(xí)興趣和互動(dòng)體驗(yàn)度。在后續(xù)工作中,擬實(shí)現(xiàn)功能更加完善、人機(jī)交互界面更加友好的春植西瓜大棚實(shí)訓(xùn)系統(tǒng)。為了進(jìn)一步增強(qiáng)用戶體驗(yàn)的真實(shí)感和交互性,可以采用數(shù)據(jù)手套逼真模擬虛擬場景中物體的抓取、移動(dòng)、旋轉(zhuǎn)等動(dòng)作,利用頭盔顯示器等3DVR圖形顯示與觀察設(shè)備提高用戶的沉浸感,使用戶能更加真實(shí)而自然地與場景中三維物體進(jìn)行交互。
參考文獻(xiàn):
[1] 朱 柱 基于Unity3D的虛擬實(shí)驗(yàn)系統(tǒng)設(shè)計(jì)與應(yīng)用研究[D] 武漢:華中師范大學(xué),2012
[2]孫 勝,田永生,冷丹丹,等 不同砧木對(duì)嫁接西瓜經(jīng)濟(jì)產(chǎn)量及葉片礦質(zhì)營養(yǎng)含量的影響[J] 植物營養(yǎng)與肥料學(xué)報(bào),2010,16(1):179-184
[3]趙 姜,張 琳,王志丹,等 我國居民西瓜消費(fèi)特征及影響因素分析[J] 中國蔬菜,2013(6):17-23
[4]石教英 虛擬現(xiàn)實(shí)基礎(chǔ)及應(yīng)用算法[M] 北京:科學(xué)出版社,2002
[5]Xiao B X,Guo X Y,Du X H,et al An interactive digital design system for corn modeling[J] Mathematical and Computer Modelling,2010,51(11/12):1383-1389
[6]趙春江,陸聲鏈,郭新宇,等 西瓜三維形態(tài)幾何建模和真實(shí)感繪制技術(shù)研究[J] 中國農(nóng)業(yè)科學(xué),2008,41(12):4155-4163
[7]Kenneth C 游戲開發(fā)大全[M] 北京:清華大學(xué)出版社,2005
[8]宣雨松 Unity3D游戲開發(fā)[M] 北京:人民郵電出版社,2012
[9]蔡 翊 基于Unity3D的金絲峽地質(zhì)公園虛擬旅游系統(tǒng)的研究與實(shí)現(xiàn)[D] 西安:西安科技大學(xué),2012endprint