李波 李秋怡 宣珊珊



摘要:畫法幾何是工科類學生必修的一門基礎課程,作為最早開設的專業課程之一,其重要性不言而喻,該課程對學生的手工繪圖能力以及空間思維能力具有奠基的作用。在當今的科教背景下,PPT已經成為教師授課的主要工具。但對于概念抽象,空間性強的畫法幾何課程來說,PPT已經無法為學生提供最佳的教學效果。為了幫助學生理解畫法幾何課程,彌補傳統課件的不足。該研究利用Unity3D技術,設計與制作了一款適用于畫法幾何學科的三維交互式課件。該課件通過為三維模型搭建虛擬仿真場景,再現了畫法幾何課程中點線面投影,組合體投影,曲面投影等運動過程,使學生通過人機交互形式,完成畫法幾何課程的學習,達到深入理解空間模型的變化及運動過程的效果。
關鍵詞:Unity3D;畫法幾何;三維交互式課件;交互性;虛擬仿真
中圖分類號:TP37 文獻標識碼:A
畫法幾何這門課程是工科類學生必修的基礎課程,主要研究空間形體變化與它在平面上投影的圖形之間的關系,概念抽象,具有較大的理解難度嘲。該課程對學生的手工繪圖能力以及空間思維能力具有奠基的作用,學好這門課程將為后續的課程以及今后的工作打下堅實的基礎。目前這門課程的教學方式主要以PPT和Flash動畫為主,雖然PPT對教授課程有很大的幫助,有些動畫甚至可以達到很好的效果,但對于理解難度較大的畫法幾何課程而言,在課堂的講解過程中由于對形體和投影的三維空間表現力不足,交互式弱,講解比較困難,無法達到最佳的教學效果。畫法幾何三維交互式課件通過為三維模型搭建虛擬仿真環境,對現實世界中的模型運動變化進行模擬。使用畫法幾何三維交互式課件時,通過使用交互設備硬件和虛擬仿真系統對虛擬模型進行交互,觀察與真實模型相識的變化過程。畫法幾何三維交互式課件可以彌補傳統課件在三維空間表現力不足,交互式弱所帶來的的問題,并且能夠提高學生學習畫法幾何課程的興趣和效率。本文基于Unity3D平臺制作了三維交互式課件程序,通過實景仿真技術,為學生提供了一款虛擬的畫法幾何三維交互式課件。
1開發背景介紹
1.1開發平臺Unity3D的介紹
Unity3D是一款適用于三維游戲、建筑可視化、實時三維動畫等綜合性開發引擎。Unity3D與其他虛擬開發平臺相比具有如下優點:它能夠同時處理音頻、視頻、圖形、三維模型等文件,人機交互性強,可以利用內置的引擎模擬實際物體的運動變化嘲。同時支持C#、JavaScript等多種腳本語言。并且可以在多個平臺發布。本文以Unity3D作為虛擬現實開發平臺,在Unity3D中為三維模型提供虛擬仿真環境,同時實現畫法幾何三維交互式課件系統所需要的UGUI界面,渲染貼圖,交互式控制,旋轉動畫等關鍵技術。
2畫法幾何三維交互式課件制作思路
基于Unity3D的畫法幾何三維交互式課件制作包括教學三維形體的制作、虛擬仿真場景的搭建、形體動畫展示、交互功能的實現、聲音圖片文檔視頻等輔助教學文件的實時控制、課件的發布等五個環節。
2.1教學三維形體的制作
由于Unity3D引擎只提供一些簡單的模型,如正方體、球體、膠囊體等,想要制作復雜的教學三維形體需要借助3Ds max軟件。在3Ds max中創建的形體各部分尺寸需要和畫法幾何課本中圖例要求一致,畫法幾何課程對形體的投影要求高,形體在三視圖中的投影要準確、清晰,如果形體運動,投影也會做相應的運動。最后將模型、動畫以FBX的格式從3Ds max中導出,基于.FBX的三維格式,使得模型可以無損地從三維模型軟件導入到Unity3D中,如果覺得模型的仿真度不高,可以在Unity3D中對形體添加材質球效果,效果會更加的逼真。
2.2虛擬仿真場景的搭建
由于Unity3D無法進行復雜模型的制作,只能通過自帶的天空盒背景簡單達到虛擬場景的效果,所以需要在建模軟件中3Ds max中進行復雜三維模型場景的構建,如教室、黑板等,場景構建完成后為了保證模型材質等不受到損失以.FBX的格式導入,將.FBX的文件導入到Unity3D中,對場景添加材質球效果,在材質球中導入相應真實場景的紋理貼圖,貼圖完成后,場景更加的真實,達到虛擬仿真的效果。課件的界面包括課程主界面,章節選擇按鈕,動畫、聲音、視頻播放按鈕,其他命令按鈕。在場景中新建UI界面,在界面中將模型、圖片、文字等組件進行合理的位置擺放,并通過按鈕實現各個組件的打開與關閉。為每一個章節中的內容展示新建一個場景放置,通過識別用戶按下的按鈕,調用LoadScene()方法實現指定內容場景的切換,從而實現相應章節的變化。
2.3形體動畫展示
形體動畫是畫法幾何三維交互式課件的關鍵,通過虛擬模型動畫全方位展現空間形體的形成變化和相應投影圖形的變化。實現模型的自由變化需要采用腳本語言編寫控制代碼形成腳本文件,將腳本文件加載到需要實現動畫的形體上,運行程序時形體就能按照腳本所編輯的規律運動。目前Unity3D支持的計算機語言有JavaScript、C#、Boo三種,三種語言的編輯邏輯和運行效率都不相同。本文選用C#這種邏輯簡單,運行效率高的計算機語言。具體實現動畫效果如下:
1)攝像機的控制。通過加載在攝像機上的腳本控制攝像機的旋轉、縮放和平移,通過改變攝像機的視角,全方位360°的觀看教學形體。在腳本中通過改變Transform組件中的position和Rotation屬性進行攝像機的旋轉、縮放和平移運動,實現對教學形體的全方位觀察。
2)形體的形成。形成動畫是針對教學模型自身的運動過程,通過判斷教學模型的長度、寬度以及高度是否到達書本要求的標準尺寸,若未達到,則繼續生成圖形,若達到,則停止動畫,在形體的形成過程中,形體的三視圖投影也會發生相應的變化。在腳本中通過首先IF語句判斷教學模型尺寸是否滿足,若未達到則通過教學模型Transform組件中的position生成長度直到到達要求,部分腳本如下:
3)三視圖的形成。形體的三視圖指左視圖、正視圖、俯視圖,是形體分別向三個平面投影所得到平面圖形。由于Unity3D是無法自動生成形體的三視圖,因此形體的三視圖是在三維軟件3Dsmax中實現的,將形體的三視圖以.FBX格式導入到Unity3D中,把三視圖分別放置到對應三個面中,確保位置與形體對應。開始時將三視圖的可見關閉。在腳本中通過IF語句判斷形體是否與相應的三個面接觸,若接觸則將相應的視圖可見打開。
2.4交互功能的實現
2.4.1自由視角查看
自由視角查看允許使用者從形體的任意高度或視角觀察形體的總體情況,能對形體的整體有更加清晰的理解與認識。使用者可以通過鼠標或者觸屏旋轉攝像機任意角度觀察形體,或使用鍵盤按鍵WASD控制攝像機進行運動來觀察形體。
2.4.2功能演示
通過鼠標或者觸屏點擊課件主界面的按鈕,來對課件的各個功能進行演示。例如點擊主界面的開始演示按鈕,形體則自動按照編寫的腳本代碼實現相應的運動和變化。點擊演示結束按鈕,則形體按照編寫的腳本代碼停止運動。
2.5聲音文檔視頻等輔助教學文件的實時控制
將聲音、圖片、文檔、視頻等文件導入到三維交互式課件中進行輔助教學,幫助學生更加理解教學內容。通過編寫代碼形成腳本文件存放在UGUI控件中,進行教學文件的實時控制,UGUI控件包括顯示題目、打開圖片、播放視頻等其他功能性插件,開始時,聲音、圖片、文檔、視頻等文件被隱藏,通過點擊UGUI控件,計算機自動讀取腳本的函數和參數,并輸出運算結果;如果程序錯誤,點擊UCUI控件沒有反應,程序會發生報錯。
2.6課件的發布
Unity3D編輯器運行在Windows和Mac OS X下,可發布產品至Windows、Mac、Wii、iPhone、Windows phone 8和Android等多個平臺。課件可以發布為.exe程序,在電腦上直接雙擊鼠標打開即可使用課件,也可以發布到IOS、Android等移動平臺,學生可以直接在手機上通過觸屏控制觀看課件,操作簡單。
3結束語
針對傳統的課件對畫法幾何課程三維表現力的不足,本文結合Unity3D技術,對教學三維形體的制作、虛擬仿真場景的搭建、形體動畫展示、交互功能的實現等功能進行了三維交互式課件的制作,進過測試發現該課件和傳統課件相比具有三維空間性高,交互式強,便于理解等優點,并且畫法幾何三維交互式課件作為教學工具提高了學生們的空間想象能力和思維能力,增加了對學習畫法幾何課程的興趣和效率。但是本課件仍然有不足之處如課件缺少文字不能為使用者提供說明解釋,以及課件的內存太大等。在后續的改進中,將進一步完善本課件,為使用者提供更為完美的交互體驗。