国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Unity 3D的光譜實(shí)驗(yàn)教學(xué)系統(tǒng)研究

2019-06-14 07:29徐富新
關(guān)鍵詞:光柵鼠標(biāo)光譜

劉 釗,徐富新

(中南大學(xué) 物理與電子學(xué)院,湖南 長沙 410000)

0 引 言

伴隨著高等教育事業(yè)的發(fā)展,大學(xué)物理實(shí)驗(yàn)公共平臺擴(kuò)大,實(shí)驗(yàn)種類、數(shù)量、儀器數(shù)目、參與實(shí)驗(yàn)的人次數(shù)均有大幅度增加。在平臺發(fā)展過程中,由于條件限制,學(xué)生難以隨時接觸到實(shí)驗(yàn)儀器。在有限的實(shí)驗(yàn)時間,學(xué)生也容易因不熟悉而損壞實(shí)驗(yàn)儀器。建立虛擬仿真實(shí)驗(yàn)室,可以較好地解決上述矛盾。虛擬實(shí)驗(yàn)是利用現(xiàn)有的虛擬現(xiàn)實(shí)技術(shù)[1-2]去模擬真實(shí)的實(shí)驗(yàn)環(huán)境[3],作為傳統(tǒng)實(shí)驗(yàn)教學(xué)一種有效的輔助手段,在現(xiàn)代教學(xué)過程中發(fā)揮著越來越重要的作用。國內(nèi)外許多大學(xué)很早就開始了虛擬實(shí)驗(yàn)室的研發(fā),以滿足教學(xué)需要。隨著計算機(jī)硬件水平的提升和軟件技術(shù)的發(fā)展,逼真度更好的三維虛擬實(shí)驗(yàn)室的開發(fā)變得可行,而仿真度和交互性則不斷進(jìn)步。

光柵光譜[4]實(shí)驗(yàn)是光學(xué)實(shí)驗(yàn)的一種。而虛擬仿真實(shí)驗(yàn)可以虛擬出實(shí)驗(yàn)所需的儀器,實(shí)驗(yàn)現(xiàn)象的模型及實(shí)驗(yàn)操作的整個流程,以達(dá)到提高實(shí)驗(yàn)教學(xué)質(zhì)量的目的,彌補(bǔ)光學(xué)實(shí)驗(yàn)這方面的不足。虛擬實(shí)驗(yàn)環(huán)境可以滿足實(shí)驗(yàn)嚴(yán)苛的要求,有利于創(chuàng)造真實(shí)的實(shí)驗(yàn)條件,可以打破時間和空間的限制。在進(jìn)入真正實(shí)驗(yàn)之前,利用虛擬仿真實(shí)驗(yàn)加強(qiáng)光柵光譜實(shí)驗(yàn)操作,從而有效地解決了這些問題。光柵光譜虛擬實(shí)驗(yàn)系統(tǒng)可以把抽象復(fù)雜的實(shí)驗(yàn)簡單化,調(diào)節(jié)虛擬儀器,實(shí)現(xiàn)操作化訓(xùn)練,還可以讓實(shí)驗(yàn)者直觀地看到實(shí)驗(yàn)原理的現(xiàn)象,通過直觀感受會進(jìn)一步加強(qiáng)實(shí)驗(yàn)者的理解,激發(fā)更大的興趣,提高物理實(shí)驗(yàn)教學(xué)質(zhì)量。

為了體現(xiàn)實(shí)驗(yàn)3D真實(shí)的效果,選擇Unity 3D[5-6]和3D Max[7]作為開發(fā)軟件。在虛擬實(shí)驗(yàn)建設(shè)方面,很多高校都創(chuàng)建了相應(yīng)的虛擬仿真實(shí)驗(yàn)平臺,大部分都是利用Flash、Labview等技術(shù)。但是,這類平臺存在自身的不足,它們的仿真效果并沒有達(dá)到很高的三維逼真度,不易創(chuàng)建出真實(shí)的實(shí)驗(yàn)環(huán)境和實(shí)驗(yàn)交互的效果。Unity 3D是一套由Unity Technologies公司開發(fā)的三維開發(fā)引擎,支持Javascript,C#,BOO語言的開發(fā)擴(kuò)展,可以使用插件,可支持3D Max或Maya等建模軟件的輸出格式,包括三維模型、骨骼動畫等。憑借精簡直觀的制作流程、功能強(qiáng)大的組件,擁有物理系統(tǒng)、粒子系統(tǒng)、動畫系統(tǒng)等,它能夠創(chuàng)建出逼真度更好的虛擬實(shí)驗(yàn)環(huán)境和儀器,可以完全滿足物理實(shí)驗(yàn)教學(xué)的要求。

文中采用模塊化開發(fā)了光柵光譜儀虛擬實(shí)驗(yàn)室系統(tǒng),采用Bmob后端云服務(wù)器,基于MVC分層思想進(jìn)行登錄注冊系統(tǒng)的設(shè)計,3D實(shí)驗(yàn)環(huán)境交互功能設(shè)計以及利用網(wǎng)格通過代碼來創(chuàng)建動態(tài)圖表的繪制設(shè)計,以滿足實(shí)驗(yàn)學(xué)習(xí)的要求。

1 光柵光譜仿真實(shí)驗(yàn)系統(tǒng)

1.1 系統(tǒng)結(jié)構(gòu)設(shè)計

光柵光譜虛擬實(shí)驗(yàn)室系統(tǒng)的設(shè)計主要參考現(xiàn)實(shí)中實(shí)驗(yàn)室進(jìn)行,根據(jù)需求設(shè)計系統(tǒng)各個模塊,系統(tǒng)結(jié)構(gòu)如圖1所示。虛擬實(shí)驗(yàn)系統(tǒng)由兩大模塊構(gòu)成,一是登錄注冊模塊,二是實(shí)驗(yàn)仿真模塊。其中,登錄注冊模塊采用基于Bmob移動服務(wù)器;實(shí)驗(yàn)仿真模塊主要分為兩種模式:一是學(xué)習(xí)模式,主要是通過視頻、文本等學(xué)習(xí)有關(guān)實(shí)驗(yàn)的內(nèi)容和步驟等,二是操作模式,讓實(shí)驗(yàn)者進(jìn)行相應(yīng)的實(shí)驗(yàn)操作。

圖1 系統(tǒng)結(jié)構(gòu)

1.2 模型的建立

在創(chuàng)建Unity項目前需要準(zhǔn)備資源,包括人物模型、動畫、紋理、音頻特效、功能腳本以及其他類擴(kuò)展插件等等。首先對虛擬實(shí)驗(yàn)室所需的資源進(jìn)行信息采集,利用3D Max制作相關(guān)的實(shí)驗(yàn)儀器模型,然后以.FBX文件導(dǎo)出,打開Unity軟件,新建項目,創(chuàng)建3D場景,導(dǎo)入資源,在Unity中進(jìn)行相應(yīng)的對象貼圖烘焙處理,根據(jù)不同用途來設(shè)置圖片類型,如紋理、反射貼圖等設(shè)置格式使物體對象達(dá)到真實(shí)逼真的效果。從系統(tǒng)模型構(gòu)建看,主要分兩部分,一個是UI為主體的2D場景,另一個就是3D場景。

1.2.1 三維模型的建立

建模采用的是3D Max。主要制作3D模型,包括有光柵光譜儀(含光電倍增管、電箱、計算機(jī)系統(tǒng))、高壓電源、準(zhǔn)直氦燈、氫燈、白熾燈等。為了提高質(zhì)感和視覺效果,實(shí)驗(yàn)中對所需儀器逐一建模生成,并通過渲染器進(jìn)行烘焙渲染、貼圖,增強(qiáng)真實(shí)感,最后將3D Max導(dǎo)出時選中嵌入媒體復(fù)選框。然后打開Unity應(yīng)用程序,在所開發(fā)的項目中,導(dǎo)入Unity會自動生成該FBX模型配套貼圖的文件。在Unity中,根據(jù)圖片資源的用途不同設(shè)置相應(yīng)的格式來達(dá)到最佳效果,如作用于光源的Cookie,選擇此類型,紋理適用于燈光對象。在創(chuàng)建3D場景過程中,為了提高資源利用率以及開發(fā)的效率,往往會制作Prefabs(預(yù)設(shè)體),Prefabs是一個對象及其組合的集合。根據(jù)實(shí)驗(yàn)室要求創(chuàng)建好3D實(shí)驗(yàn)室,此時,實(shí)驗(yàn)室中所有的實(shí)驗(yàn)?zāi)P投贾皇庆o態(tài)的,根據(jù)需要添加各種組件來給予相應(yīng)的功能,比如說提供了多個物理模擬的組件,通過修改相應(yīng)參數(shù),從而使對象表現(xiàn)出與現(xiàn)實(shí)相似的各種物理行為,給每個模型一個網(wǎng)格,這樣人物就不可以穿過去,為對象添加剛體(RigidBody)組件,對象便可以接受外力才會受到重力的影響等等。

1.2.2 虛擬仿真UI設(shè)計

UI場景在實(shí)驗(yàn)中主要涉及到兩個功能模塊,即登錄注冊模塊和實(shí)驗(yàn)操作模塊中的學(xué)習(xí)模式。在Unity5以上的版本中,UGUI在易用和功能上一點(diǎn)不遜于NGUI,使用UGUI可以快速地建立UI界面,它的最主要的組件就是畫布(Canvas),每一個GUI控件必須是畫布的子對象。在Canvas組件下有三種渲染模式:覆蓋、攝像機(jī)以及世界空間模式。在覆蓋模式下,Canvas下的UI會獨(dú)立于其他場景元素。而在常見的攝像機(jī)模式下,其渲染的繪制圖像會產(chǎn)生在攝像機(jī)的鏡頭下;世界空間模式下,就與其他場景對象一樣。

如圖2所示,它分為兩部分,一種是可視化組件,有文本、圖像、遮罩等,如text(文本)用來顯示非交互文本,可以作為標(biāo)題,Image(圖像)可用作裝飾、圖標(biāo)、背景圖等等。另一種就是互動性組件,部分組件中可以添加代碼與其相互響應(yīng),比如Button(按鈕)響應(yīng)來自用戶的單擊事件,如果鼠標(biāo)在單擊釋放之前離開Button控件,則動作不會發(fā)生。在這個畫布下根據(jù)要求用到所需的UI元素,通過組合這些UI控件來完成UI場景。

在實(shí)際的Unity場景制作中,為了使對象在場景中層次不會錯亂,可以創(chuàng)建不同的工作層來管理對象,使得場景更加分明,對象之間操作也更加方便。

2 系統(tǒng)關(guān)鍵技術(shù)

2.1 登錄注冊

創(chuàng)建一個空對象UI來管理整個UI場景,向場景中添加Canvas組件,通過Rect Transform組件將其調(diào)整至合適位置。在Canvas組件下添加一個Image組件和一個空對象,Image作為整個背景圖,而空對象Window用來管理注冊和登錄的窗口。在空物體Window下分別創(chuàng)建Panel,取名Regist和Logon,這樣形成兩個不同的窗口,在Panel下添加文字、圖片、按鈕等等UI元素,根據(jù)它們的需求創(chuàng)建不同的功能,最后形成了登錄和注冊的窗口。

2.1.1 MVC動態(tài)加載登錄窗口

利用UI架構(gòu),設(shè)置場景管理器來完成這一部分的功能。MVC[8-9]思想是將一個應(yīng)用分成三個基本部分:Model(模型)、View(視圖)和Controller(控制器),這三個部分以最少的耦合協(xié)同關(guān)系工作,從而提高應(yīng)用的可擴(kuò)展性及可維護(hù)性。UI是所有UI*的基類,包括兩個子類,其中一個為UIScene,它是所有場景UIScene*的基類,它的子類UISceneLogonCtrl,是一個場景UI的控制器,UIWindow是所有窗口UIWindow*的基類。

登錄視圖LogonView,只負(fù)責(zé)與UI交互,而控制器負(fù)責(zé)把Model的數(shù)據(jù)顯示在View上或者從View上采集數(shù)據(jù)。MVC框架中,控制器控制視圖,且把Model的數(shù)據(jù)顯示在View上。比如登錄模式,view=UILogOnView視圖,只負(fù)責(zé)和UI交互,控制器負(fù)責(zé)把Model的數(shù)據(jù)顯示在View上,或者從View采集數(shù)據(jù),打開或者關(guān)閉窗口,點(diǎn)擊按鈕之后,賬戶控制器就會接收到按鈕接收到的數(shù)據(jù),然后數(shù)據(jù)就會通過Model傳輸給服務(wù)器。Model中包含業(yè)務(wù)數(shù)據(jù)和業(yè)務(wù)邏輯,業(yè)務(wù)數(shù)據(jù)通過網(wǎng)絡(luò)通訊模塊傳輸給服務(wù)器。Model還有本地數(shù)據(jù)管理,包括數(shù)據(jù)讀取和本地存儲,如圖3所示。

2.1.2 基于Bmob實(shí)現(xiàn)登錄、注冊功能

通過Bmob[10]可以隨時存儲和讀取自己在平臺上的實(shí)時數(shù)據(jù),很好實(shí)現(xiàn)了客戶端通過網(wǎng)絡(luò)與后端云的數(shù)據(jù)連通。使用輕量級的Bmob C# SDK開發(fā)包,將Bmob-Window文件引用到項目工程,進(jìn)而實(shí)現(xiàn)用戶登錄和注冊的功能。免去了服務(wù)器維護(hù)、數(shù)據(jù)存儲互通等繁瑣的工作,大幅度提高開發(fā)效率,減少研發(fā)時間和成本。

圖3 MVC動態(tài)加載結(jié)構(gòu)

首先需要下載相對應(yīng)的Bmob-unity文件放入工程的libs下,然后將BmobUnity組件掛載在攝影機(jī)下,在Bmob移動云官網(wǎng)中注冊賬號,將申請賬號下的Application ID和Rest key分別寫入相對應(yīng)的BmobUnity中。然后創(chuàng)建相應(yīng)的類繼承BombUser類,重寫其中的login()和register()函數(shù)。在這個過程中需要從數(shù)據(jù)庫中讀取或者寫入數(shù)據(jù)。也有相應(yīng)的函數(shù),只要調(diào)用就行,十分方便。

注冊代碼如下:

MyBmobUser user=new MyBmobUser();

user.username=userName.text;

user.password=pwd.text;

Bmob.Signup (user,(resp,excp)=>{

if(excp !=null)

{

tishi.text="注冊失敗";

return;

}

else

{

tishi.text="注冊成功";

}

});

2.2 實(shí)驗(yàn)操作交互技術(shù)

任何一項實(shí)驗(yàn)操作都有一定的操作流程,這對實(shí)驗(yàn)儀器的保護(hù)、實(shí)驗(yàn)人員的安全以及實(shí)驗(yàn)的成功至關(guān)重要。在操作過程中采用了分步式的實(shí)驗(yàn)操作過程。操作者可以自行糾正操作的錯誤,加強(qiáng)實(shí)驗(yàn)儀器的操作,熟練實(shí)驗(yàn)流程,避免儀器的損害,進(jìn)而達(dá)到訓(xùn)練的目的,為以后實(shí)時操作打下堅實(shí)的基礎(chǔ)[11-12]。

交互的實(shí)現(xiàn)主要通過程序代碼對物體之間的觸發(fā)來完成。在Unity中,操作者通過鍵盤、鼠標(biāo)來控制虛擬實(shí)驗(yàn)中的人物,而虛擬世界中的人物與3D物體之間的交互(如碰撞、觸發(fā)等)則需要函數(shù)等程序指令來實(shí)現(xiàn)。以單色儀定標(biāo)過程為例,打開計算機(jī)(主機(jī)、顯示器),開啟光柵光譜儀電箱電源,啟動光柵光譜儀控制系統(tǒng)程序進(jìn)行初始化操作,檢查并設(shè)置參數(shù)使其滿足實(shí)驗(yàn)需要,開啟氦燈電源,將燈對準(zhǔn)光柵光譜儀狹縫,執(zhí)行“工作/單程掃描”,執(zhí)行“讀取數(shù)據(jù)/尋峰”,收集數(shù)據(jù),關(guān)閉儀器。

在虛擬實(shí)驗(yàn)操作場景中,實(shí)驗(yàn)者以第一人稱視角,用鼠標(biāo)操作執(zhí)行相應(yīng)的內(nèi)容。在操作場景中可以操作儀器做出相應(yīng)的動作,同時包含有對該步驟的文字說明,便于加深使用者對實(shí)驗(yàn)操作的理解[13]。

比如,提前做好一個關(guān)于錯誤信息的預(yù)設(shè)體,如果出現(xiàn)錯誤步驟,就會響應(yīng)函數(shù)方法,代碼如下:

GameObject errPre=Instantiate(errObj,tipSystem.transform.position,tipSystem.transform.rotation) as GameObject;

errPre.transform.SetParent(tipSystem.transform);

errPre.GetComponentInChildren().text =displayText;

當(dāng)點(diǎn)擊計算機(jī)按鈕時,按鈕會由白色變?yōu)榧t色,這是提醒電源已開,表示已經(jīng)觸發(fā)激活了電腦屏幕,此時啟動光柵光譜儀控制系統(tǒng)程序,會有提示提醒先打開電箱電源開關(guān)和單色儀。這樣就會按照提示,一步步進(jìn)行試驗(yàn),而不會出現(xiàn)操作步驟的錯誤從而導(dǎo)致試驗(yàn)的失敗,如圖4中(a)和(b)所示。

圖4 提示圖

同時,為了進(jìn)一步體現(xiàn)實(shí)驗(yàn)的交互性,還設(shè)計了放大功能,在做實(shí)驗(yàn)的過程中,可以進(jìn)一步觀看實(shí)驗(yàn)儀器,如圖4(c)所示。此時需要鼠標(biāo)來完成,鼠標(biāo)輸入的相關(guān)事件包括鼠標(biāo)移動、按鍵的單擊等,鼠標(biāo)位置的變量類型為Vector3,其中x分量對應(yīng)水平坐標(biāo),y分量對應(yīng)垂直坐標(biāo),z分量始終為零。GetMouse ButtonDown需要傳入?yún)?shù)來判斷鼠標(biāo)按鍵,0代表左鍵,1代表右鍵,2對應(yīng)中間。其關(guān)鍵代碼如下:

if(Input.GetMouseButtonDown(1) && showTips)

{

flag=true;

tmp=Instantiate(prefab,cam.transform.position,cam.transform.rotation) as GameObject;

tmp.transform.position +=cam.transform.forward * 1.0f;

tmp.transform.position+=cam.transform.up*0.1f;

tmp.transform.Rotate(Vector3.forward *Input.GetAxis("MouseX") * -speed);

tmp.transform.Rotate(Vector3.right *Input.GetAxis("Mouse Y") * speed);

}

而showTips判斷的依據(jù)是鼠標(biāo)是否經(jīng)過物體。主要通過鼠標(biāo)與物體之間的觸發(fā)函數(shù),其中點(diǎn)擊鼠標(biāo)右鍵以第一人稱視角為中心。在腳本中,預(yù)設(shè)一個新的放大物體距人物一定距離,方便操作者仔細(xì)觀察實(shí)驗(yàn)儀器,為實(shí)驗(yàn)者帶來較為真實(shí)且操作方便的體驗(yàn)感[14]。

2.3 動態(tài)仿真圖

光柵光譜儀實(shí)驗(yàn)中最主要的部分是獲取光譜曲線,包括單色儀定標(biāo)、測量氫光譜、氦光譜等。

主要做法有:(1)根據(jù)以往在真實(shí)實(shí)驗(yàn)中所測量的光譜圖,將其制作為圖片,導(dǎo)入unity中生成UI圖片,以圖片的方式呈現(xiàn)給操作者;(2)運(yùn)用unity3D的圖表插件GraphMaker動態(tài)數(shù)據(jù)生成的圖表。這兩種方法都能產(chǎn)生光譜圖,可是對于實(shí)驗(yàn)來說,光譜圖波長的產(chǎn)生是根據(jù)光柵在轉(zhuǎn)動的過程中,復(fù)合光通過光柵產(chǎn)生衍射形成單色光,波長并不是一次就出來的,這樣給操作者的真實(shí)體驗(yàn)就差一些。

在Unity中Graphic是所有可視化UI組件的基類。在創(chuàng)建可視UI組件時,從這個類繼承。其在繼承了MaskableGraphic的子類關(guān)鍵方法OnPopulateMesh中重寫該方法,向OnPopulateMesh方法中傳入對應(yīng)的VertexHelper類型的數(shù)據(jù),即可構(gòu)建出自己想要的組件。VertexHelper是UnityEngine.UI一個實(shí)用程序類,是一個包含了網(wǎng)格數(shù)據(jù)中的頂點(diǎn)數(shù)據(jù)和三角面對應(yīng)頂點(diǎn)的序號,可以幫助生成UI的網(wǎng)格。以下通過兩個點(diǎn)來制作矩形。首先獲取兩點(diǎn)之間的長度,分別將兩點(diǎn)在X、Y方向的斜率作為單位,創(chuàng)建UIVertex,重新設(shè)置四個頂點(diǎn)vertex的位置,從而得到矩形。關(guān)鍵代碼如下:

protected UIVertex[] Quad(Vector2 startPoint,Vector2 endPoint)

{

float length=Vector2.Distance(startPoint,endPoint);

float xS=(endPoint.y-startPos.y)/length;

float yS=(endPoint.x-startPos.x)/length;

UIVertex[] vertex=new UIVertex[4];

vertex[0].position=new Vector3(startPoint.x-xS,startPoint.y-yS);

vertex[1].position=new Vector3(startPoint.x+xS,startPoint.y+yS);

vertex[2].position=new Vector3(endPoint.x+xS,endPoint. y+yS);

vertex[3].position=new Vector3(endPoint.x-xS,endPoint. y-yS);

return vertex;

}

這個矩形就相當(dāng)于一個點(diǎn),線段就是由許多點(diǎn)構(gòu)成,光譜圖動態(tài)顯示則是根據(jù)已知的實(shí)驗(yàn)數(shù)據(jù)轉(zhuǎn)換為一組坐標(biāo),使用協(xié)同逐點(diǎn)顯示連線。在設(shè)計虛擬仿真實(shí)驗(yàn)系統(tǒng)之前,已經(jīng)做過有關(guān)實(shí)驗(yàn),獲得相關(guān)的實(shí)驗(yàn)數(shù)據(jù)。在設(shè)計和構(gòu)建了實(shí)驗(yàn)的仿真界面過程中,包括儀器參數(shù)設(shè)置和仿真實(shí)驗(yàn)結(jié)果等,把數(shù)據(jù)進(jìn)行本地化存儲。根據(jù)之前得到的真實(shí)實(shí)驗(yàn)數(shù)據(jù),在虛擬仿真實(shí)驗(yàn)系統(tǒng)中本地存儲不同的光譜圖,與此同時在讀取數(shù)據(jù)時也是根據(jù)之前實(shí)驗(yàn)數(shù)據(jù)加入了部分隨機(jī)函數(shù),使虛擬仿真實(shí)驗(yàn)系統(tǒng)的數(shù)據(jù)更真實(shí)、合理。圖5為用已知波長的氦燈光譜線對光柵單色儀定標(biāo)界面。

圖5 氦光譜

根據(jù)實(shí)驗(yàn)的具體要求和實(shí)驗(yàn)者的一些操作行為來得到相應(yīng)的實(shí)驗(yàn)結(jié)果,虛擬仿真實(shí)驗(yàn)系統(tǒng)效果良好[15]。

3 系統(tǒng)發(fā)布

Unity擁有強(qiáng)大的圖形引擎和功能,為開發(fā)者提供了平臺,用于開發(fā)豐富的2D、3D、VR及AR交互式內(nèi)容。擁有直觀的工作流程和功能強(qiáng)大的工具集,支持多種資源格式導(dǎo)入,可以將3D模型、圖像、視頻、聲音等進(jìn)行結(jié)合快速實(shí)現(xiàn)創(chuàng)意,并結(jié)合Unity內(nèi)部強(qiáng)大的系統(tǒng)組件功能,如專業(yè)的物理引擎系統(tǒng)模擬包含剛體、柔體、重力、碰撞等各種物理行為;快速的UGUI界面設(shè)計,強(qiáng)大的可視化編輯器,可以滿足各種界面制作需求等。這些功能可以輕松完成三維互動開發(fā),創(chuàng)建出虛擬仿真內(nèi)容。通過Build Setting中的PC選項就可以將內(nèi)容部署輕松送達(dá)至PC平臺,生成可執(zhí)行文件及其數(shù)據(jù)文件包。圖6為系統(tǒng)模塊展示。

圖6 系統(tǒng)模塊展示

圖6(a),進(jìn)入登錄注冊窗口完成登錄后,在實(shí)驗(yàn)主場景中有兩種模式選擇,分別對應(yīng)實(shí)驗(yàn)學(xué)習(xí)模式和實(shí)驗(yàn)操作模式,可以自己選擇進(jìn)入相應(yīng)的場景進(jìn)行學(xué)習(xí)。進(jìn)入學(xué)習(xí)模式后,包括實(shí)驗(yàn)簡介、實(shí)驗(yàn)原理、實(shí)驗(yàn)步驟,如圖6(b);用戶可以自己選擇進(jìn)行最基礎(chǔ)的理論學(xué)習(xí)。學(xué)習(xí)完成后進(jìn)入實(shí)驗(yàn)操作場景進(jìn)行實(shí)驗(yàn)操作,如圖6(c);如果對實(shí)驗(yàn)儀器感興趣,可以去儀器場景,將儀器打開,觀察儀器內(nèi)部結(jié)構(gòu),如圖6(d)。

4 結(jié)束語

在光學(xué)實(shí)驗(yàn)教學(xué)方面,設(shè)備昂貴且易損,實(shí)驗(yàn)環(huán)境要求高,因此將Unity3D和3D Max技術(shù)引進(jìn)光學(xué)實(shí)驗(yàn)教學(xué)訓(xùn)練中。就其自身優(yōu)點(diǎn)來講,它精簡直觀的制作流程、功能強(qiáng)大的組件,突破了傳統(tǒng)的學(xué)習(xí)方式,可以提前讓學(xué)生學(xué)習(xí)有關(guān)實(shí)驗(yàn)的基礎(chǔ)知識,通過各種交互功能,熟悉操作實(shí)驗(yàn)流程,加深對實(shí)驗(yàn)儀器組成部件的認(rèn)識和操作,豐富了學(xué)生的學(xué)習(xí)內(nèi)容。學(xué)生可以在任何時間任何地點(diǎn)多次進(jìn)行實(shí)驗(yàn)操作,加強(qiáng)學(xué)生的實(shí)驗(yàn)學(xué)習(xí),有效地減少了實(shí)驗(yàn)設(shè)備損害,提高了實(shí)驗(yàn)利用效率。因此,該系統(tǒng)具有很好的應(yīng)用價值。

猜你喜歡
光柵鼠標(biāo)光譜
基于三維Saab變換的高光譜圖像壓縮方法
高速公路隧道感溫光柵監(jiān)測技術(shù)探析
基于3D-CNN的高光譜遙感圖像分類算法
薄膜光伏組件在不同光譜分布下的測試差異
光纖光柵傳感器的應(yīng)用研究及進(jìn)展
光纖光柵傳感器在足尺瀝青路面加速加載試驗(yàn)中的應(yīng)用
光柵刻劃機(jī)刻劃系統(tǒng)光機(jī)電集成優(yōu)化方法研究
苦味酸與牛血清蛋白相互作用的光譜研究
鼠標(biāo)折疊筆
45歲的鼠標(biāo)
巴彦县| 崇明县| 黄陵县| 南投县| 景泰县| 墨竹工卡县| 广平县| 高要市| 永和县| 柯坪县| 深圳市| 涞水县| 尼玛县| 太原市| 唐河县| 留坝县| 通州区| 准格尔旗| 延津县| 龙川县| 凤庆县| 定日县| 维西| 温宿县| 建水县| 云阳县| 上饶县| 宿松县| 娱乐| 岐山县| 富顺县| 瑞昌市| 宁河县| 兴安县| 如东县| 南岸区| 海淀区| 婺源县| 荔浦县| 梓潼县| 和田市|