二十世紀六十年代興起的認知心理學(xué)在教育教學(xué)領(lǐng)域提出了~ 些新思想、新觀念,給今天的教學(xué)方式帶來了一場新的革命?,F(xiàn)代認知心理學(xué)主要研究人們對知識的獲得、儲存、提取和運用的過程,認為人在信息加工時是主動的,不是被動的I11。因此,它對現(xiàn)代教學(xué)有著極其深刻的影響,尤其對變革傳統(tǒng)的教學(xué)方式有著指導(dǎo)性作用。
在當今的信息時代,教育面臨著嚴峻的挑戰(zhàn)。新知識、新技術(shù)不斷產(chǎn)生,舊知識快速老化并被淘汰。因而我們迫切需要對現(xiàn)有的、傳統(tǒng)的教學(xué)方式進行改革,以提高教學(xué)效率 。
利用虛擬現(xiàn)實技術(shù)和計算機網(wǎng)絡(luò)進行教學(xué)貝U是提高教學(xué)效率、改善教學(xué)環(huán)境和提升教學(xué)質(zhì)量的行之有效的重要途徑。
虛擬現(xiàn)實(VR)是2O世紀末才興起的一門嶄新的綜合性信息技術(shù)。它實時的三維空間表現(xiàn)能力、自然的人機交互式操作環(huán)境以及給人帶來的身臨其境感受,將從根本上改變?nèi)伺c計算機之間枯燥、生硬和被動的現(xiàn)狀,為人機交互技術(shù)開創(chuàng)新的研究領(lǐng)域。隨著虛擬現(xiàn)實技術(shù)的發(fā)展,它在教學(xué)中得到了越來越多的應(yīng)用。它的交互、沉浸和多感知的特點給學(xué)生帶來了濃厚的學(xué)習(xí)興趣,使學(xué)生沉浸在虛擬環(huán)境中,大大提高了學(xué)生學(xué)習(xí)的主觀能動性。
據(jù)了解,已有國內(nèi)外學(xué)者利用Flash、VRML、OpenGL等軟件做過類似的案例,但Flash做出的動畫是二維的,缺乏立體形象的感覺;而VRML和OpenGL雖然可以做出三維的模型,但它們?nèi)狈梢暬_發(fā)環(huán)境,并且需要較高的編程技術(shù),所以在實際開發(fā)過程中存在難度大、實現(xiàn)復(fù)雜、輔助功能不強等諸多問題,易用性和實用性不甚理想。
一、基于PCS(Product—Context—Scenario)技術(shù)的Virtools體架構(gòu)
(一)架構(gòu)目的
虛擬太陽系架構(gòu)的根本目的是:改變傳統(tǒng)“教師教學(xué)生學(xué)”的單一教學(xué)方式,采用虛擬現(xiàn)實技術(shù)和計算機網(wǎng)絡(luò)技術(shù)構(gòu)建網(wǎng)絡(luò)、多媒化的探究性教學(xué)方式,提高學(xué)生學(xué)習(xí)的主動性和想象力,使其利用網(wǎng)絡(luò)進行實際操作、搜索資料和進行討論,提出自己的看法和建議,從而提高他們的創(chuàng)造性思維。
虛擬太陽系把虛擬現(xiàn)實、多媒體和計算機網(wǎng)絡(luò)等技術(shù)與教育教學(xué)理論有機地結(jié)合起來,為學(xué)生呈現(xiàn)了一個豐富精彩的虛擬世界,虛擬太陽系網(wǎng)站如圖1所示。
圖1 虛擬太陽系網(wǎng)站
其主要特點有六個方面:其一,利用3ds max對太陽系的主要成員(太陽和行星)進行三維建模,并根據(jù)它們在太陽系中的空間位置來設(shè)置其相對位置;其二,具有豐富的交互功能, 如果點擊左側(cè)的菜單或頁面中的物體,此物體會自動放大并飛到你的眼前,從而使你可以更加仔細地觀察它,再點擊它又回到原來的位置;其三,支持多媒體信息輔助,可以設(shè)置3D音效、背景音樂等;其四,具有文本解釋功能,可以通過點擊“使用幫助”菜單來獲取操作方法,當點擊虛擬環(huán)境中某個具體物體時,會自動彈出文本介紹;其五,具有討論反饋的功能,通過點擊“BBS討論”鏈接,可以在BBS上留言或討論問題;其六,具有知識拓展的功能,通過點擊“相關(guān)資料”鏈接,可以獲得關(guān)于太陽系知識的豐富資料,包括網(wǎng)站、文本、視頻、圖片等。
(二)組織結(jié)構(gòu)
根據(jù)學(xué)生的實際需要與思維拓展,虛擬太陽系主要由操作區(qū)域、使用幫助、BBS討論區(qū)、相關(guān)資料四個模塊組成。這四個模塊雖然功能各不相同,但都是為了同一個教學(xué)目的,而且彼此相互聯(lián)系和補充。其組織結(jié)構(gòu)如圖2所示。
圖2 虛擬太陽系組織結(jié)構(gòu)
操作區(qū)域模塊主要包括太陽、行星、軌道、彈出菜單和物體動畫,虛擬太陽系主界面的設(shè)計如圖3所示:
圖3 主界面設(shè)計圖
當把鼠標放在左側(cè)物體菜單上時,會彈出此物體的英文名稱,用鼠標左鍵單擊時,會播放物體的動畫(地球動畫播放演示如圖4所示),使學(xué)生更清楚地觀測星球。當點擊界面上的某個星球時,同樣會播放它的動畫和運動軌跡,這樣就可以更生動形象地把物體表面和運動呈現(xiàn)到觀測者面前,使其更容易tB,G和發(fā)散思維。幫助模塊主要幫助使用者更簡單、快速地操作此虛擬系統(tǒng),上面有文本介紹和圖片演示,包括如何操作和提示信息;BBS討論區(qū)模塊是讓學(xué)生進行操作和體驗后, 討論有關(guān)太陽系的疑問和想法,從而和其他同學(xué)交流,如:星球的大小、位圖4 地球動畫播放演示圖
圖4 地球動畫播放演示圖
二、虛擬太陽系的設(shè)計和實現(xiàn)方法
(一)VIRTOOLS軟件概述
Virtools是由法國全球交互三維開發(fā)解決方案公司VIRTOOLS開發(fā),其三維引擎已經(jīng)成為微軟XBox認可系統(tǒng)。其特點是方便易用,應(yīng)用領(lǐng)域廠泛 。
1.Vrtools成分
Virtools在3D 互動展示方面是一種強大的技術(shù) ]l7I。Virtools有很完善的組成:一個創(chuàng)作應(yīng)用程序、一個動作引擎、一個渲染引擎、一個Web播放器、一個軟件開發(fā)工具包(SDK)。
Virtools Dev是一個創(chuàng)作應(yīng)用程序,一款允許你快速簡單建立3D 內(nèi)容的應(yīng)用程序。Virtools Dev不是一款建模軟件,但是,類似攝影機、燈光、曲線、界面組件和3D結(jié)構(gòu)等簡單的媒體能通過點擊一個圖標建立一個動作引擎。Virtools是一個動作引擎、Virtools是一個渲染引擎,那是因為Virtools處理動作。有一個渲染引擎來繪制你在Virtools Dev 3D 設(shè)計中的圖像。Virtools是一個Web播放器。提供一個免費的Web播放器,能被任何人下載使用。Virtools Dev是一個軟件開發(fā)工具包,包括一個能訪問動作的某個部分和渲染過程的軟件開發(fā)工具包。
2.Virtools模塊
Virtools除了自身的3D/VR 開發(fā)平臺Virtools Dev以外, 還有五個可選模塊: 物理屬性模塊(Virtoo1 sPhysics Pack for Dev)、沉浸式平臺((Virtoo1 s vR Packfor Dev))、人工智能模塊(Virtoo1 s AI Pack for Dev)、Xbox開發(fā)模塊(VirtooI s Xbox Kit for Dev)和網(wǎng)絡(luò)服務(wù)器模塊(Virtoo1 s Se~er)。
3.Virtools特征
Virtools能用來制作具有沉浸感的虛擬環(huán)境, 它能幫助參與者生成諸如視覺、聽覺、觸覺、味覺等各種感官信息,給參與者一種身臨其境的感覺,是一種新發(fā)展的、具有新含義的一種人一機交互系統(tǒng),可以制作出不同用途的3D產(chǎn)品,如:網(wǎng)際網(wǎng)絡(luò)、計算機游戲、多媒體、建筑設(shè)計、交互式電視、教育訓(xùn)I練、仿真與產(chǎn)品展示等等 。相對于其他相關(guān)虛擬現(xiàn)實技術(shù), 采用Virtools還具有減小開發(fā)難度、降低開發(fā)周期、真實性好、交互性強等特點,因此,此構(gòu)建虛擬太陽系采用了Virtools技術(shù)。
(二)構(gòu)建虛擬太陽系的主要流程
1.建立三維模型和Virtools資源庫
由于Virtools本身沒有建模的功能,所以一般建模方法是采用建模軟件來實現(xiàn),如:3DMAX 或Maya等。筆者采用的是3DStudio Max。通過三維建模、設(shè)定材質(zhì)、賦予貼圖、添加動畫、渲染、烘焙后借助Max Exporter插件導(dǎo)出為NMO 格式文件并保存(導(dǎo)出NMo 格式文件需要安裝相應(yīng)的Max Exporter廟件),然后在Virtools中導(dǎo)入所生成的NMO 文件,從而產(chǎn)生了場景物體的原始檔,原始檔內(nèi)存儲有物體的相關(guān)屬性,如:基本的形狀、面片和顏色等,同時也存儲有相應(yīng)紋理材質(zhì),最終保證物體的逼真性。
在Virtools Dev 中用Resources/Create New DataResource命令創(chuàng)建新的資源庫, 把準備好的各種NMO格式文件拷貝到資源庫相應(yīng)的文件夾中,Virtools Dev將自動分類并加載。這部分工作旨在為在Virtools中進行拖放操作做好前期準備。需注意的是對每個不同的虛擬實驗項目應(yīng)建立單獨的資源庫,這樣更便于后期的修改更新及文件管理。
2.交互行為控制
利用Virtools Dev對虛擬太陽系進行交互行為控制,就是將物體演示步驟分解成具體行為, 并與鍵盤的操控和鼠標的拖曳、點擊等動作構(gòu)成映射。交互設(shè)定是通過Virtools中內(nèi)置行為模塊實現(xiàn)的,能夠?qū)ΧS或三維模型進行各種基本操作(如:平移、旋轉(zhuǎn)、縮放、顏色和透明度變化、二維貼圖等)復(fù)雜操作(如:投影、燃燒、行走、奔跑、后退等)。
在Virtools Dev中主要是通過行為模塊(BBs)來進行交互行為控制的。Virtools自帶有500多個BBs, 每個BBs具有特定的作用和功能,而且BBs本身有參數(shù)設(shè)定,從而可以把功能不同的BBs相互連接起來并且進行參數(shù)設(shè)定,以達到想要實現(xiàn)的目的。
Virtools自帶的BBs基本能滿足設(shè)計的要求。另外,還有兩種方法可以設(shè)計出具有特殊功能的BBs來滿足交互設(shè)計的要求:一種是通過VC++編程[91;另一種是利用Virtools的軟件開發(fā)工具包SDK。通過SDK 可以創(chuàng)建一個新的動作(BBs)、修改現(xiàn)有動作的運行,通過給輸入和輸出文件寫B(tài)Bs可實現(xiàn)一些特殊格式的模型文件的導(dǎo)入導(dǎo)出、修改替換或擴充Virtools Dev的渲染引擎。
3.成品發(fā)布
虛擬太陽系經(jīng)過場景建模、交互行為設(shè)定、測試正確后,可以采用三種方式進行發(fā)布:一種是通過“Export toVirtools Player”命令直接保存為 .vmo格式;第二種是通過“Create Web Page”命令將文件保存為htm 格式,這樣,客戶端只需下載并安裝插件“3D Life Play”即可進行虛擬實驗[101;第三種是利用Virtools打包器生成 .exe。可執(zhí)行文件上傳到網(wǎng)站上,用戶直接下載到本地主機上來使用。
三、虛擬太陽系實例分析
虛擬太陽系模型能讓學(xué)生從三維空間對太陽系進行立體的、全方位的觀察和操作,從而對太陽系的組成、概貌、大小、和尺寸等有更深的體會和理解,提高學(xué)習(xí)的效率和樂趣。下面通過實例來說明利用Virtools制作虛擬太陽系的主要步驟:
(一)整體場景的調(diào)入及設(shè)置
1.模型庫場景調(diào)入與設(shè)置
首先, 導(dǎo)入NMo 模型文件到Virtools的三維編輯區(qū),設(shè)置它的大小與位置,并且設(shè)定初始值,建立燈光與攝像機;其次,從模型庫中調(diào)入所需的實體、圖形或視頻文件到三維編輯區(qū),并設(shè)置它們的屬性;最后從模型庫中調(diào)入需要的動畫文件到相應(yīng)的角色上,從而完成基本場景的調(diào)入和設(shè)置。
2.彈出菜單的制作與設(shè)置
彈出菜單都是用2D Sprites(二維精靈)來制作與實現(xiàn)的,所以要把2D Sprites從文件夾中拖放到三維編輯區(qū),并按照順序排列和擺放它們,設(shè)定初始值,以方便恢復(fù)已調(diào)整好的位置,為后期添加BBs模組、實現(xiàn)交互行為做準備。
(二)鼠標觸發(fā)動作的設(shè)置
1.鼠標點選軌道圖標
因為每個行星都按一定的軌道在運轉(zhuǎn),所以我們根據(jù)行星的運行軌跡設(shè)計了它們的軌道,使之更加形象;當用鼠標點擊軌道圖標時軌道出現(xiàn)5秒鐘,然后自動消失,用到的BBs有Wait Message、Group Iterator、Show、Hide和Delayer。該行為交互的腳本流程如圖5所示。
圖5 軌道流程圖
2.鼠標觸發(fā)彈出菜單
當把鼠標拖放到左側(cè)星球或軌道圖標上時,會自動彈出一個帶有該星球名字的菜單,鼠標移走它即消失,這個彈出菜單的作用就是顯示此星球的名字,從而使學(xué)生更容易識別記憶。這個腳本流程用到了兩個封裝的BBs、Roll On與Roll Of,封裝的BBs就是把許多基本的BBs按一定順序連接起來,然后把它們包裹起來,重新命名。
它的好處是使腳本流程看起來更簡潔清晰,并且可以在以后用到的時候重新調(diào)用,減少了開發(fā)腳本的工作量。具體腳本流程如圖6。Roll On展開如圖7。
圖6 彈出菜單流程圖
圖7 封裝模塊展開圖
3.標點選圖標或星球?qū)嶓w
當用鼠標點擊左側(cè)圖標或星球?qū)嶓w時,星球會變大,并且飛翔到操作者的眼前,再點擊又恢復(fù)到原來狀態(tài)。當星球變大并飛到操作者眼前時, 右側(cè)會彈出一個幫助菜單,上面會顯示此星球的名字、半徑、軌道、密度和衛(wèi)星等情況,以利于操作者在觀察的同時獲得更多的知識。這個過程比較復(fù)雜,它包括星球變大、顯示和隱藏幫助菜單、星球狀態(tài)轉(zhuǎn)換等幾個分支,這些效果主要是通過設(shè)置攝像機來實現(xiàn)的,因為攝像機相當于我們的眼睛,當攝像機變化時,我們看到的東西也會發(fā)生變化。具體腳本流程如圖8、圖9、圖10、圖11。
(三)星球自轉(zhuǎn)與公轉(zhuǎn)的設(shè)定
虛擬太陽系是模擬真實太陽系而設(shè)計的, 所以與現(xiàn)實中的自然規(guī)律一樣,行星繞著太陽公轉(zhuǎn),衛(wèi)星繞著行星公轉(zhuǎn),而太陽、行星和衛(wèi)星本身還在自轉(zhuǎn),因為幾個行星的公轉(zhuǎn)和自轉(zhuǎn)是一樣的設(shè)置, 所以這里就用行星地球和衛(wèi)星月球作為代表, 這里用到的BBs有Rotate、cu—eFollow等。具體腳本流程如圖12、圖13所示。
圖12 地球公轉(zhuǎn)自轉(zhuǎn)流程圖
圖13 月球公轉(zhuǎn)自轉(zhuǎn)流程圖
(四)星球表面效果的設(shè)定
我們知道太陽表面有耀斑和黑子活動,所以在太陽的表面要設(shè)置像閃耀的火焰的效果,對于這些效果在Virtools Dev中實現(xiàn)非常容易, 用一個粒子系統(tǒng)模塊就可以實現(xiàn)。這里我們用球狀粒子系統(tǒng)模塊SphericalParticleSystem 來模擬太陽表面的火焰效果。具體腳本流程如圖14所示。
圖14
(五)后期整合
利用3ds max和Virtools完成建模交互設(shè)計后,虛擬太陽系的工作已經(jīng)完成了大部分,后面就是結(jié)合網(wǎng)站設(shè)計軟件Dreamweaver、Asp和Photoshop來完成虛擬太陽系網(wǎng)站的其他模塊, 最后通過前面提到的三種發(fā)布方式, 把虛擬太陽系成品發(fā)布到網(wǎng)站上, 以提供學(xué)習(xí)者使用。
四、結(jié)論
《基礎(chǔ)教育課程改革綱要》明確指出:“大力推進信息技術(shù)在教學(xué)過程中的普遍應(yīng)用, 促進信息技術(shù)與學(xué)科課程的整合,逐步實現(xiàn)教學(xué)內(nèi)容的呈現(xiàn)方式、學(xué)生的學(xué)習(xí)方式、教師的教學(xué)方式和師生互動方式的變革,充分發(fā)揮信息技術(shù)的優(yōu)勢, 為學(xué)生的學(xué)習(xí)和發(fā)展提供豐富多彩的教育環(huán)境和有力的學(xué)習(xí)工具。 筆者認為,技術(shù)的應(yīng)用最終是為了更好地優(yōu)化學(xué)習(xí)。虛擬現(xiàn)實技術(shù)可以生動形象地為學(xué)生展現(xiàn)教學(xué)內(nèi)容, 讓學(xué)生對所學(xué)內(nèi)容產(chǎn)生濃厚的興趣,網(wǎng)絡(luò)技術(shù)可以讓學(xué)生在線協(xié)作學(xué)習(xí)、相互討論、及時反饋;而虛擬太陽系正是兩種技術(shù)在教育應(yīng)用中的一次嘗試和探索,它改變了傳統(tǒng)的教學(xué)方式,提高了教學(xué)效率,改善了教學(xué)環(huán)境,提升了教學(xué)質(zhì)量,不僅能使學(xué)生掌握知識,還能使學(xué)生學(xué)會如何學(xué)習(xí),培養(yǎng)學(xué)生獨立思考的能力和自主學(xué)習(xí)的能力,有利于學(xué)生的個性發(fā)展。雖然虛擬現(xiàn)實技術(shù)在教育中的應(yīng)用剛剛興起, 與其他領(lǐng)域相比還不太成熟,但相信它在教育系統(tǒng)中一定會有美好的未來!
[參考文獻]
[1j范利,白建國,張華從認知心理學(xué)看變革傳統(tǒng)教學(xué)方式的必然Uj.科技信息(學(xué)術(shù)研究),200B,(O8).
[2]裴衣非計算機在教學(xué)方式改革中的作用uJ.科技信息(學(xué)術(shù)研究),2008,(O5)
[3]Southwest.Virtools~ [DB/OL]. http://www.86vr.corn/ware/software/200210/421.html,2007-08-20.
[4]李昌國,朱福全,譚良,楊春.基于3D 和Virtools技術(shù)的虛擬實驗開發(fā)方法研究U1_計算機T程與應(yīng)用,2006,(31).
[5]http:ltwww.virtools.com.cn/bbs/index.a(chǎn)sp.
[6]劉明昆編著.三維游戲設(shè)計師寶典~Virtools開發(fā)工具篇.四川:四川出版集團.四川I電子音像出版中心,2005
[7]劉明昆編著.三維游戲設(shè)計師寶典一Virtools技術(shù)實戰(zhàn)篇.汕頭:汕頭大學(xué)出版社,2006.
[8]李昌國.基于3D 和Virtools技術(shù)的虛擬實驗室架構(gòu)設(shè)計[D].四川I師范大學(xué),2007.
[9]http://blog.hxsd.com.cn/blog/huangsixian/arficle/i19882.html,2007-7-10.
[1O]李欣《現(xiàn)代教育技術(shù)》虛擬實驗室的設(shè)計與開發(fā)UJ.現(xiàn)代教育技術(shù),2008,(O2).