王巍巍,章凱,倪東鴻,梁磊
天氣現(xiàn)象的虛擬仿真實驗教學平臺*
王巍巍1,章凱2,倪東鴻3,梁磊2
(1.南京信息工程大學 大氣與環(huán)境實驗教學中心,江蘇 南京 210044;2.南京信息工程大學 傳媒與藝術(shù)學院,江蘇 南京 210044;3.南京信息工程大學 國家級大氣科學與氣象信息虛擬仿真實驗教學中心,江蘇 南京 210044)
為了強化學生對天氣現(xiàn)象的實驗實習,彌補常規(guī)實驗教學的不足,利用Unity3D技術(shù),設計和開發(fā)了包含34種天氣現(xiàn)象的虛擬仿真實驗平臺。此平臺通過虛擬仿真實驗場景,再現(xiàn)了34種天氣現(xiàn)象的發(fā)生、發(fā)展及結(jié)束過程,使學生通過人機互動形式,完成虛擬仿真實驗實習,達到深入理解天氣現(xiàn)象特征及其變化過程的目的。
天氣現(xiàn)象;虛擬仿真實驗;Unity3D;人機互動
虛擬仿真實驗教學依托虛擬現(xiàn)實、多媒體、人機交互、數(shù)據(jù)庫和網(wǎng)絡通訊等技術(shù),構(gòu)建高度仿真的虛擬實驗環(huán)境和實驗對象,學生在虛擬環(huán)境中開展實驗,從而完成教學任 務[1-2]。虛擬仿真技術(shù)以其安全、經(jīng)濟、可控、多次重復以及無風險等獨特優(yōu)勢在各專業(yè)教學中發(fā)揮著越來越大的作用[3-5]。Unity3D是由Unity Technologies推出的適用于三維游戲、建筑可視化、實時三維動畫等綜合型開發(fā)軟件,該軟件可以將三維模型、二維界面、粒子特效以及計算機語言進行整合與發(fā)布;由于其可跨平臺式的發(fā)布方式,已被廣泛應用于手機端和PC端的游戲開發(fā)上[6]。近年來,隨著實驗教學新模式的不斷探索,Unity3D被廣泛用以開發(fā)各類虛擬仿真實驗,如軍事[7]、體育訓練[8]、礦井作業(yè)[9]、航空[10]等。
天氣現(xiàn)象的識別和記錄是“大氣探測實習”的基礎教學內(nèi)容,也是大氣科學專業(yè)學生必須掌握的內(nèi)容。在實際教學中,受實習地點、授課時間及天氣實況等條件所限,學生不可能親身經(jīng)歷、觀測到各種天氣現(xiàn)象,實踐教學效果受到了一定的影響,不利于提高學生的實踐能力。為了解決該問題,南京信息工程大學開發(fā)了基于Unity3D技術(shù)的天氣現(xiàn)象虛擬仿真實驗教學平臺。
天氣現(xiàn)象虛擬仿真實驗教學平臺的構(gòu)建主要分為三大部分:前層的UI(User Interface)設計、中層的三維展示空間、后臺的腳本開發(fā)。在實現(xiàn)前層的UI設計與交互時,通過Adobe Photoshop軟件進行界面的整體設計并將其拆分為各單一元素,導入至Unity3D中,通過腳本來實現(xiàn)各圖標之間的邏輯切換與動態(tài)表現(xiàn)。對于中層的三維展示空間的制作分為場景的搭建與粒子系統(tǒng)的表現(xiàn)。由于Unity3D無法進行模型的制作,因此該平臺模型搭建與材質(zhì)表現(xiàn)是在MAYA(AutoDesk Maya)軟件中實現(xiàn)的?;?FBX的三維格式,使得模型可以無損完成從三維制作軟件到Unity3D的通信。而粒子系統(tǒng)的表現(xiàn)由于各軟件之間關(guān)于粒子系統(tǒng)之間的通信一直沒有統(tǒng)一的方式,因此是利用Unity3D自身的粒子系統(tǒng)進行設計與開發(fā),并使用腳本對其進行控制與交互。后臺的腳本開發(fā)是該實踐教學平臺的基礎與重要環(huán)節(jié),Unity3D所能支持的計算機語言為JavaScript、C#和Boo三種,三種語言的編輯邏輯、執(zhí)行效率都不同。選取C#這種邏輯簡單,執(zhí)行效率較高的語言方式。利用C#提供的KPI(Key Performance Indicator),調(diào)用不同的函數(shù)實現(xiàn)人機交互的操作。天氣現(xiàn)象虛擬仿真軟件平臺通過Unity3D和其他軟件功能性整合,實現(xiàn)天氣現(xiàn)象仿真教學的功能設計和需求。
仿真場景以南京信息工程大學中國氣象局綜合觀測培訓實習基地(南京)(簡稱觀測基地)為藍本,設計了全場地、多氣象儀器的介紹,讓學生近距離、直觀了解觀測基地的各種設備。實驗者以觀測基地為視角,判斷和記錄出現(xiàn)在觀測基地及視線所及的天氣現(xiàn)象;當有的天氣現(xiàn)象出現(xiàn)在特殊的地形或地點時,由當前場景轉(zhuǎn)換到特定的場景。仿真軟件操作主頁面如圖1所示。
《地面氣象觀測規(guī)范》按照天氣現(xiàn)象的成因、性質(zhì),將天氣現(xiàn)象分為降水現(xiàn)象、地面凝結(jié)現(xiàn)象、視程障礙現(xiàn)象、雷電現(xiàn)象和其他現(xiàn)象五大類[11],總計34種天氣現(xiàn)象,如表1所示。降水現(xiàn)象包括雨、陣雨、毛毛雨、雪、陣雪、雨夾雪、陣性雨夾雪、霰、米雪、冰粒、冰雹;地面凝結(jié)現(xiàn)象包括露、霜、霧凇、雨??;視程障礙現(xiàn)象包括霧、輕霧、吹雪、雪暴、揚沙、沙塵暴、浮塵、霾、煙塵;雷電現(xiàn)象包括雷電、閃電、激光;其他現(xiàn)象包括大風、颮、龍卷、塵卷風、冰針、積雪、結(jié)冰。
圖1 仿真軟件操作主頁面
表1 34種天氣現(xiàn)象及其符號
現(xiàn)象名稱符號現(xiàn)象名稱符號現(xiàn)象名稱符號現(xiàn)象名稱符號 雨陣雨毛毛雨雪 陣雪雨夾雪陣性雨夾雪冰雹 霰米雪冰粒冰針 露霜霧淞雨淞 霧輕霧霾沙塵暴 揚沙浮塵吹雪雪暴 煙幕雷暴閃電大風 颮龍卷塵卷風極光 結(jié)冰積雪
平臺仿真了各種天氣現(xiàn)象的發(fā)生、發(fā)展和結(jié)束過程,展現(xiàn)天氣現(xiàn)象的地面特征、云、場景明暗度及相關(guān)氣象要素的演變,輔以必要的文字說明,盡量呈現(xiàn)接近真實的場景。同時,實驗要求學生通過人機互動界面,完成天氣現(xiàn)象的相關(guān)記錄。平臺根據(jù)輸入結(jié)果,給出“正確”或“錯誤”提示等。
軟件運行操作系統(tǒng)為Windows,為便于學生在網(wǎng)絡和機房操作練習,開發(fā)了32位和64位兩個軟件版本,軟件大小分別為305 M和308 M。無須安裝,直接運行可執(zhí)行文件。
陣雨是由對流云產(chǎn)生的陣性降水,降水性質(zhì)表現(xiàn)為驟降驟止,降水強度變化大,有時會伴有雷暴。雨滴直徑一般大于0.5 mm。在虛擬場景中,因陣雨是由對流云如積雨云(Cb)、濃積云(Cu)或?qū)臃e云(Sc)產(chǎn)生的,因此在天空背景中添加了對流云發(fā)展及打雷、閃電效果。陣雨的虛擬場景如圖2所示。
在處理對流云發(fā)展時,考慮到計算機的耗能,規(guī)避了采用實體模擬的方式來表達流動云的狀態(tài)。將Unity3D中的粒子的渲染模式調(diào)整為水平公告板模式,得益于攝影機位是由下而上的,因此可以利用多個粒子產(chǎn)生的軸上的高度差,最大限度地模擬出云層的厚度。而云層內(nèi)部的運動,則是通過一張事先準備好的云層圖片,設置粒子無序旋轉(zhuǎn)和無序放大,以造成云層運動的隨機性,從而更加接近實際效果。為了體現(xiàn)陣雨的雨滴與雨的不同,必須展示雨滴落地的飛濺效果。陣雨的雨滴直徑較大,雨滴落在堅硬的地面上有飛濺的效果,在處理這種飛濺的效果時,需要依賴Unity粒子的碰撞系統(tǒng);但在Unity的粒子系統(tǒng)中,無法模擬出真實的物體砸擊地面而破碎的動力學效果。解決這種問題的一種思路就是讓粒子在撞擊地面的同時消失并發(fā)射新的粒子,而這個新的粒子就可以用來模擬雨滴飛濺后的效果。此外,通過調(diào)整全局燈光照明使得天空變得灰暗。
圖2 陣雨的虛擬場景
根據(jù)平臺中陣雨的實際情況,學生判斷陣雨強度(分為小、中、大),選擇合適的電碼(相應為80、81、82)[12],并在開始和結(jié)束時間文本框內(nèi)填寫相應的時間,開始、結(jié)束時間的格式為4個數(shù)字(時時分分),不足位時補0,如0814。
冰雹是來自強烈積雨云發(fā)展過程中產(chǎn)生的堅硬的球狀、錐狀或形狀不規(guī)則的固態(tài)降水。冰雹的外層為透明層與不透明層相間的冰層。大的著地反跳,堅硬不易碎。直徑一般在2毫米到幾十毫米。當有冰雹出現(xiàn)時,要及時記錄開始時間和終止時間。根據(jù)冰雹降落速度、冰雹數(shù)量及地面累積情況,來判斷冰雹強度的大小,選擇電碼88或90。為了清晰表現(xiàn)冰雹的形態(tài),主界面右側(cè)有一個放大的小窗口,供實驗者細致觀測固態(tài)降水,以區(qū)分不同類型的固態(tài)降水。小窗口的設置是通過開啟第二攝影機,且調(diào)整其在畫面中的位置與大小來完成的。當然,設置第二攝影機時,需重點考慮攝影機的位置、最小剪切平面以及視角范圍;通過不斷調(diào)整,完成對被觀察物體的視覺最佳化。冰雹的虛擬場景如圖3所示。
當夜間輻射冷卻達到0 ℃以下時,水汽在地面或近地面物體上凝華而成的白色松脆的冰晶就是霜。霜一般出現(xiàn)在晴朗微風、濕度大的夜間,地表溫度在0 ℃以下。在虛擬霜的場景時,以地面為背景,隨著溫度的降低,水汽逐漸在物體表面凝華、長大,形成針狀的霜層。為直觀表現(xiàn)溫度的下降過程,場景左側(cè)增加一個溫度表,以動態(tài)顯示溫度變化。隨著太陽的升起,地面、空氣溫度升高,霜逐漸消失。霜的記錄僅需輸入符號和代碼(02),無需記錄起止時間。霜的虛擬場景如圖4所示。
圖3 冰雹的虛擬場景
圖4 霜的虛擬場景
在處理霜這類天氣現(xiàn)象時,需要設置兩個攝影機,供實驗者更好地觀察、分辨具體的天氣現(xiàn)象,但針對此類天氣現(xiàn)象的不同景別(即遠景和特寫),需要通過不同的方式來表現(xiàn),圖4主畫面表現(xiàn)的是霜的全景狀態(tài),而小窗口則是其細節(jié)。這里,處理大場景粒子的方法可以效仿前述的表現(xiàn)流體云的處理方法,使用動態(tài)貼圖結(jié)合粒子的無序性來表現(xiàn);而細節(jié)的表現(xiàn),則首先需要理解此類天氣現(xiàn)象中單一元素的形態(tài),霜的單一形態(tài)就是一個針狀的霜層,由此展開貼圖的繪制,其次將其應用到粒子的外觀屬性上。此外,需要注意發(fā)射器形態(tài)的調(diào)整,尤其在表現(xiàn)凝結(jié)類的現(xiàn)象時,由于其是附在物體表面的,因此,發(fā)射器的形態(tài)需要完全匹配物體,由此才能在正確的位置上模擬出正確的凝結(jié)類現(xiàn)象。
塵卷風是由于地面局部強烈增熱,在近地面氣層中產(chǎn)生的小旋風,塵沙及其他細小物體隨風卷起形成的塵柱。一般在干燥地區(qū)午后出現(xiàn)較多。不是所有的小旋風都記為塵卷風,只有直徑達到2 m以上,高度超過10 m,才記為塵卷風[13]。當塵卷風出現(xiàn)時,記錄符號和代碼(08)。
塵卷風的虛擬場景設計為干燥的沙質(zhì)地面,塵卷風在地面移動中不斷卷起地面的塵土。在表達與物體有相互作用的天氣現(xiàn)象時,往往需要多種粒子系統(tǒng)的搭配使用,不同的粒子系統(tǒng)被用來模擬不同的對象。塵卷風的虛擬場景如圖5所示,塵卷風本身是沒有顏色的,正是因為它卷起了地上的塵土而有了灰黃的顏色,這就需要調(diào)整該種粒子系統(tǒng)的色彩等,以與周邊環(huán)境相適應。此外,由于地面物體的多樣性及其質(zhì)量屬性不同,所以需要另外調(diào)整幾套粒子系統(tǒng)來模擬地上塵土被卷起時的狀態(tài)。如此搭配使用,才可更好地模擬出塵卷風天氣現(xiàn)象。
圖5 塵卷風的虛擬場景
霧凇是由過冷水滴迅速凍結(jié)或由空氣中水汽直接凝華在物體上的乳白色冰晶物,表現(xiàn)為起伏不平的粒狀(粒狀霧凇)或毛茸茸的針狀(晶狀霧?。lF天及靜風時易出現(xiàn)。多附在物體的突出角上或細長物體的迎風面上。該現(xiàn)象在冬季中國北方地區(qū)和山區(qū)易發(fā)。
對該現(xiàn)象進行了虛擬場景轉(zhuǎn)換,由鄰近河邊的一棵樹來展現(xiàn)霧凇的形成過程,霧凇在枝條上逐漸生成并加厚,最后結(jié)成白色的霧凇。為便于詳細了解該過程,在主界面的右側(cè)同時展示一個小窗口,近距離呈現(xiàn)霧凇在枝條上的生長過程。在虛擬表現(xiàn)這類有累積沉淀特點的天氣現(xiàn)象時,需要盡可能地規(guī)避使用粒子的不斷疊加來表現(xiàn),如此則會極大地占用計算機的耗能,導致計算機崩潰。解決此類天氣現(xiàn)象的思路就是利用粒子自身的大小位移,來模擬出沉淀累積的感覺。這樣有利于在有限的計算機耗能下,能更有效地虛擬霧凇現(xiàn)象。霧凇的虛擬場景如圖6所示。
將虛擬仿真技術(shù)應用到大氣科學實驗教學領(lǐng)域,利用Unity3D粒子技術(shù)模擬不同天氣現(xiàn)象,為實踐教學提供了逼真的實習場景,該軟件平臺操作簡單、易于上手,具有很好的推廣與應用價值,這也是Unity3D粒子技術(shù)在大氣科學領(lǐng)域一次有意義的實踐與探索。引入虛擬仿真技術(shù),通過增加虛擬仿真學時或引導學生在課堂以外的時間進行上機操作,極大豐富了實踐教學內(nèi)容,提升了操作體驗和教學的互動性,形成了一種新的教學體驗模式,有效提升了學生實踐技能的鍛煉。
圖6 霧凇的虛擬場景
但由于軟件平臺的兼容性與普適性,使得軟件從搭建之初就需要保證其有較小的包體量以及較強的互動性,由此導致部分天氣現(xiàn)象無法大面積表現(xiàn),如雨凇、霧凇等,只能通過一個特例來展現(xiàn)其演變過程;其次,由于計算機圖形表現(xiàn)與肉眼識別的差距,在表現(xiàn)一些較為細小的天氣現(xiàn)象時,無法表現(xiàn)得過于具象,往往需要用夸張的表現(xiàn)手法來體現(xiàn),如毛毛雨,其雨滴較?。ㄖ睆叫∮?.5 mm),軟件為了分辨出雨滴個體,無法做得太小,因而無法展現(xiàn)其漂浮的視覺體驗,尚需進一步完善。
[1]馬文頂,吳作武,萬志軍,等.采礦工程虛擬仿真實驗教學體系建設與實踐[J].實驗技術(shù)與管理,2014,31(9):14-18.
[2]李連崇,馬天輝,梁正召,等.基于數(shù)值仿真的土木工程實驗教學改進與實踐[J].實驗技術(shù)與管理,2013,30(7):83-86.
[3]袁紅艷,劉宗強.系留氣球升空/回收仿真訓練系統(tǒng)設計[J].現(xiàn)代電子技術(shù),2013,36(20):41-44.
[4]馮峰,孫聰,曲先強.船海虛擬仿真實驗教學中心的建設與發(fā)展[J].實驗技術(shù)與管理,2014,31(1):11-14.
[5]李靜昭,張迪.虛實結(jié)合的飛機儀表顯示系統(tǒng)實踐教學研究[J].實驗技術(shù)與管理,2016,33(12):142-145.
[6]邱建松.基于Unity3d的實時虛擬仿真系統(tǒng)的研究與實現(xiàn)[J].信息工程,2012(12):11-12.
[7]張延,余紅英,戚藝雪,等.基于Unity3D/3DMAX的導彈視景仿真系統(tǒng)[J].科技視界,2013(25):51,199.
[8]張麗,趙家彥,于學軍.3D臺球訓練考評系統(tǒng)的設計與實現(xiàn)[J].電腦與信息技術(shù),2014,22(6):53-56.
[9]沈旭霞,賈欣欣,滿強,等.基于Unity3d的防噴演習系統(tǒng)的設計與實現(xiàn)[J].自動化技術(shù)與應用,2016,35(7):139-142.
[10]王坤,胡賢躍,葛雅靜.空客A320航空發(fā)動機虛擬仿真教學平臺開發(fā)[J].實驗技術(shù)與管理,2016,33(3):112-116.
[11]中國氣象局.地面氣象觀測規(guī)范[S].北京:氣象出版社,2003.
[12]中國氣象局監(jiān)測網(wǎng)絡司.地面氣象電碼手冊[M].北京:氣象出版社,1999.
[13]王振會,黃興友,馬舒慶.大氣探測學[M].北京:氣象出版社,2016.
TP391.9
A
10.15913/j.cnki.kjycx.2019.24.017
2095-6835(2019)24-0042-04
王巍巍(1979—),女,黑龍江綏化人,碩士研究生,高級實驗師,主要從事大氣探測實習教學工作。
國家自然基金項目(編號:41575135)
〔編輯:嚴麗琴〕