利用虛擬現實技術構建動畫素材開發環境的研究論文

General 更新 2024年05月10日

  虛擬現實技術是一種可以建立和體驗虛擬世界的計算機模擬系統它利用計算機生成一種模擬環境是一種多源資訊融合的互動式的三維動態視景和實體行為的系統模擬使使用者沉浸到該環境中。以下是小編今天為大家精心準備的:利用虛擬現實技術構建動畫素材開發環境的研究相關論文。內容僅供參考,歡迎閱讀!

  利用虛擬現實技術構建動畫素材開發環境的研究全文如下:
 

  摘要:多媒體技術與虛擬現實技術是當今計算機發展的必然趨勢,如果將兩者結合起來應用於教學領域會是一種有益的嘗試。本文主要介紹了利用虛擬現實技術製作一個動畫開發環境的思想和方法,目的是解決製作網路教學軟體時動畫開發依賴動畫工具比較複雜以及傳輸速度較慢的問題.這個開發環境適用於非計算機專業的教師使用。

  關鍵字: 多媒體技術 虛擬現實***VRML*** 動態連結庫 計算機輔助教育

  0 引言

  多媒體技術是當今計算機發展的必然趨勢。它集計算機技術、音像技術和通訊技術為一體,具有良好的整合性。它使資訊不僅作用於人的視覺,而且也作用於人的聽覺,從而擴大了人對資訊的攝入量,使得人機關係更加親近。

  虛擬現實技術***簡稱VRML***是一種具有真實感的高階人機介面,人們能夠通過多種感官渠道與它進行實時互動。這種技術的應用前景是非常廣泛的,在醫療、製造業、娛樂和教育等方面的應用也具有很大潛力。可以想象,如果你能夠進入到具有沉浸感的,並且有多種感官反饋的虛擬境界中學習知識,無疑將使你的學習更為有效。

  那麼如何來構造這種虛擬現實的境界呢?VRML就是最佳的選擇。什麼是VRML,VRML是Virtual Reality Modeling Language***虛擬現實造型語言***的縮寫。使用VRML,你能設計自己的三維虛擬空間、用你想象的任何東西來填充虛擬的世界。這些僅僅受限於你的想象力。VRML最讓人興奮的特點,是能夠使你建立動態的世界和感覺豐富的虛擬環境;動畫空間裡的物體,使它們運動;在你的空間裡播放聲音和影象;允許使用者和你的空間進行互動;使用指令碼來控制,改進你的空間。

  不僅如此,由於VRML檔案僅僅是一些數學表示式來描述互動式的3D世界,並且也不需要傳輸大量的影象檔案,接受端在獲得這些表示式之後,將自行進行計算、加工、作色等處理,然後即顯示成3D影象。因此,它在網上傳送的資訊量將大為減少,這樣就解決了網路傳輸速度的瓶頸問題。這樣就能夠使你在Internet上建立動態的世界和感覺豐富的虛擬環境。

  綜上所述可以看到,如果能夠將虛擬現實語言***即VRML模型***應用於計算機輔助教學軟體的開發中將會是我們在教學方法上一次有益的嘗試,但是對非計算機人員來說學習該語言的學習是非常困難的,我們製作這個動畫開發環境就是想讓教學軟體的開發主體-----任課教師使用方便,只需填入引數便可生成需要的動畫了。

  1 問題的提出

  1.1 面臨的四個問題

  通過研究分析,發現擺在我們面前的問題主要有四個:

  ***1*** 如果想使一個VRML模型適應不同的使用者需求,該模型就必須是按使用者要求動態生成的。如根據使用者輸入的長、寬、高生成相應的長方體模型。採用什麼辦法?

  ***2*** 在模型數量越來越多的情況下,必須具備一種管理模型的機制,能有效的組織和管理眾多的模型。是利用資料庫還是別的什麼技術?

  ***3*** 為了保持該系統的穩定健康的發展,必須能及時給系統補充新的模型,並對以往開發的舊模型進行及時更新。那麼網路是不是我們最好的答案?

  ***4*** 對於按使用者要求動態生成的VRML模型,必須提供一種方法將其應用於教學軟體開發環境中,如VB、Authorware等。這種方法是什麼?

  1.2 四個模組的確立

  基於上一小節的分析,我們將該開發環境的設計分解為四個模組進行處理:

  ※VML***VRML Models Library*** 構建機制的設計與實現

  ※VRML程式碼引擎的設計與實現

  ※VML網站建設

  ※利用VB或Authorware開發基於VRML的課件

  首先使用者利用VML將使用者提出的要求***VRML節點的引數***傳給 VRML程式碼引擎,由引擎生成相應的VRML程式碼,再通過VML將生成的程式碼返回給使用者。然後使用者將得到的VRML程式碼應用於其教學軟體開發環境中。同時,使用者還可以不斷的通過VML網站對VRML引擎進行豐富和更新。

  2 VML構建機制的設計與實現

  2.1根據使用者提出的要求動態生成VRML模型

  對於這個問題,有三點是值得注意的:

  ***1*** 使用者提出的要求應該是合理的要求,或者說是符合客觀規律的要求

  因為顯然如果使用者要求系統為他生成一個上底面半徑為3,下底面半徑為4,高為5的圓柱體,系統恐怕永遠也辦不到。因為現實中,圓柱體上下底面半徑相同。這就要求我們必須為使用者提供一個預定義好的輸入介面。例如對於圓柱體,系統只提供底面半徑和高兩個輸入介面。

  ***2*** 動態生成引數輸入介面

  在研究VRML時,我們發現VRML本身只是一種描述三維虛擬空間的檔案。而實際的三維模型的繪製工作由相應的VRML瀏覽器完成。因而,我們考慮是否可以給出一個引數介面描述檔案,由系統讀入、分析,然後動態生成引數輸入介面。通過對VRML的初步學習,我們發現一個VRML模型需要的引數大體分為三種:數字、文字、布林值。針對這三種引數我們給出瞭如下的引數描述定義:

  數字 :N,Caption,MinValue,MaxValue,InitValue

  文字 :T,Caption,InitText

  布林值:B,Caption,TrueText,FalseText,InitValue

  其中各定義的意義如下表:

 

  有了引數描述檔案,我們又編制了相應的解釋描述檔案並生成介面的程式。

  ***3*** 對於生成的VRML模型,使用者是想將其獨立應用,還是組合到其他模型中去。 對於這兩種使用方式,最終的VRML程式碼是有一些區別的。因此,必須提供對於該問題的選項以保證生成的程式碼具有針對性。在我們的系統中具體的實現方法是如果使用者想將生成的模型組合到其他模型中去,他只需要將生成的程式碼拷貝到剪貼簿,然後再複製到他所在的VRML編輯環境中去。如果他是用於另一種目的,則系統將生成的程式碼自動進行包裝並儲存到使用者指定的 .wrl檔案中去。

  2.2 組織與管理大量的VRML模型

  隨著模型***程式碼引擎***的不斷開發,其數量也會越來越多。在這種情況下,就要求我們設計出一種能有效地組織和管理眾多的模型的機制。我們首先想到用資料庫來管理。但經分析發現,如果資料庫能根據使用者的要求返回模型,那這種模型必然是在資料庫中已經存在的靜態模型。如果考慮到使用者的各種要求,這個資料庫必然會無限膨脹以致失去其資料庫管理所具有的任何優點。通過分析決定借鑑當前應用軟體***例如3D MAX***比較流行的管理機制——外掛。這種機制就是將一類模型組織為一個外掛***即為VRML程式碼引擎***放到系統下。每次啟動系統,系統會自動將其目錄下的所有外掛裝載到系統中來擴充自己的功能。可以想象採用了這種機制,肯定會極大地提高系統的擴充套件性與開放性。我們受到Windows程式設計中的“回撥函式”思想的啟發:一般作業系統都是由系統提供函式,由程式來呼叫,而回調函式則是由程式提供函式,由系統呼叫,方向剛好相反。

  這樣,我們的外掛***VRML程式碼引擎***也被設計成能夠提供一些標準的例程***回撥函式***來供系統來呼叫。其與系統協作的機理如下圖*** 圖1 ***:

 

  這些例程包括:

  getLibName 返回該外掛所代表節點庫的名稱

  getNodeNameList 返回該外掛所提供的模型列表

  getArgs 返回當前選中模型的引數描述定義

  checkArgs 核對使用者的輸入是否正確

  processArgs 利用程式碼引擎生成VRML程式碼

  根據以上機理,我們編制了系統“諾德發動機***Node Engine***”;而外掛則是製作成DLL***動態連結庫***形式。之所以採用DLL這種形式,是因為我們可以利用DLL的輸出例程及其動態呼叫機制模擬回撥函式。 鑑於Delphi 4 整合開發環境是真正的面向應用程式設計全過程的視覺化應用程式開發環境,其提供的大量實用工具可以使開發人員很容易地實現和完成複雜的功能。因此我們選擇Delphi 4作為我們的系統及外掛的開發工具。

  最後我們通過例項驗證了上述機制的可行性及實用性。另外補充一點:由於外掛開發採用了DLL方式,所以只要其提供了符合規則的例程,至於使用什麼開發工具開發則是無關緊要的。因此說,為了在極大程度上得到第三方開發人員提供的支援,該系統在開放性上做出了有效的努力。

  3 VML網站建設

  只有不斷變化、更新的事物才最具有生命力。由於我們的系統採用了外掛機制,因此對於模型的更新與補充是相當方便的。只需將新的外掛替換老的外掛即可。問題是新的外掛從何而來。最好的途徑當然是利用Internet。這就要求我們首先要建立一個VML網站,其次在系統中提供一個連到網站上的介面。對於後者,實現的方法非常簡單,只需在系統中提供一個連到VML網站的快捷按鈕即可。

  VML網站的建設有兩點是很重要的。第一應使訪問者感受到該網站與其他網站的區別,即應體現出VRML的存在。第二對於眾多的外掛,應分門別類加以管理,也就要合理安排超級連結。在網站的實現中,我們用Java編制了動態選單來實現對外掛有效的管理。

  至於如何體現VRML的存在,我們在網站首頁用VRML編寫一個簡單的三維場景。但是VRML是用VRML瀏覽器播放的,在IE中,三維場景與網頁其他部分會被VRML瀏覽器分隔開,不利於整體效果。為了解決這個問題,我們對VRML瀏覽器進行研究發現其描繪三維場景時使用了Microsoft公司的DirectX技術。在DirectX中有一個元件DirectAnimation是專門用來配合DHTML***動態HTML***製作網頁二維和三維動畫的。

  因此我們便直接使用該元件構造用來模擬VRML的三維場景***如 圖 2***。對於如何在網站上組織管理外掛,我們用現今非常流行的Java語言編制了動態選單來管理。之所以稱之為動態選單,是因為選單的所有選單項均是根據一個外部描述檔案來動態生成。生成的選單***如圖3***。

 

  有了動態選單的管理機制,當網站中外掛有了變化時,維護人員便可以在最短時間內,最有效的對連線外掛的超級連結進行維護。

  4 結束語

  該課題是在認知心理學理論,教學設計原理的指導下,在多媒體技術、VRML語言、網路共享互動技術的基礎上開發出來的。本軟體的目的就是為了簡化VRML模型製作過程,以便廣大教師,特別是非計算機專業的教師應用模型開發課件。教育是一個永恆的話題,也是一門永無止境的科學,在眾多教育工作者的共同努力下,它必將會綻放出更為璀璨絢麗的光芒。
 

  參考文獻

  1. [美]Andrea L.Ames VRML 資源手冊 電子工業出版社

  2. [美]Richard C.Leinecker Visual J++ 寶典 電子工業出版社

  3. 詹裡 Delphi 4.0 新起點 機械工業出版社

  4. 李元泰 Windows 程式設計實現 電子工業出版社

現場匯流排控制系統的構成與特點論文
鍵盤事件的掛鉤監控原理及其應用探討論文
相關知識
利用虛擬現實技術構建動畫素材開發環境的研究論文
虛擬現實技術下數字圖書館的應用研究論文
熠熠發光的虛擬現實技術閱讀答案
熠熠發光的虛擬現實技術閱讀練習及答案
熠熠發光的虛擬現實技術說明文閱讀原文附答案
熠熠發光的虛擬現實技術閱讀題答案
熠熠發光的虛擬現實技術閱讀理解附答案
熠熠發光的虛擬現實技術說明文閱讀原文和答案
計算機虛擬現實技術的相關論文
手術室護理中運用舒適理念護理的研究論文