虛擬場景中虛擬化身的應(yīng)用[文檔資料]_第1頁
虛擬場景中虛擬化身的應(yīng)用[文檔資料]_第2頁
虛擬場景中虛擬化身的應(yīng)用[文檔資料]_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

虛擬場景中虛擬化身的應(yīng)用 本文檔格式為 WORD,感謝你的閱讀。 針對瀏覽者在虛擬場景中游覽迷失方向,缺少沉浸感的問題。提出一種有效的解決辦法,即通過添加虛擬化身使虛擬環(huán)境更活潑,更有吸引力。 利用虛擬化身,自動(dòng)帶領(lǐng)瀏覽者參觀虛擬場景,充分了解環(huán)境。 虛擬現(xiàn)實(shí)技術(shù)是 20 世紀(jì) 80 年代末 90 年代初崛起的一項(xiàng)實(shí)用性很強(qiáng)的技術(shù)。它可以真實(shí)的模擬出現(xiàn)實(shí)世界的事物或環(huán)境,用戶投入到這種環(huán)境中,猶如 “ 身臨其境 ” 的感覺。但是,隨著虛擬現(xiàn)實(shí)的不斷深入,僅有 景色、障礙物的三維場景已經(jīng)無法滿足人們視覺的需求,需要引入一些生動(dòng)的人物角色,即虛擬化身,并在虛擬化身身上完成各類交互,來增加瀏覽者的沉浸感。 1 建立虛擬化身模型 當(dāng)一個(gè)虛擬的三維場景建好后,為了使虛擬場景更活潑更具吸引力,在虛擬場景中設(shè)計(jì)一個(gè)虛擬化身是很有必要的。虛擬化身的設(shè)計(jì)手先就是建立虛擬化身模型。目前有許多建立虛擬人體模型的方法,根據(jù)現(xiàn)有的實(shí)驗(yàn)條件和人體骨骼的構(gòu)造,采用建模的方法建立虛擬化身模型。建模過程如下: ( 1)繪出三維人體骨骼層次結(jié)構(gòu)圖 ( 2)通過 VRML 語言中的坐標(biāo)變換節(jié)點(diǎn)( Transform)、內(nèi)聯(lián)結(jié)點(diǎn)( Inline)等進(jìn)行設(shè)計(jì)生成人體三維骨骼圖。 ( 3)采用 Avatar Studio 軟件生成虛擬化身。通過Export VRML 導(dǎo)出,生成 wrl 文件。使用 Avatar Studio 軟件導(dǎo)出的虛擬替身,生成的 avatar.wrl 文件存在類型定義不匹配的問題,需要修改類型定義。 Avatar Studio 生成的avatar.wrl 文件的 PROTO 節(jié)點(diǎn) position 域的定義為exposedField SFVec3f position 0 0 0 與 后面要在 Script節(jié)點(diǎn)調(diào)用 position 域的定義類型不匹配,需要修改為eventIn SFVec3f position。 2 實(shí)現(xiàn)人性化的虛擬化身 要想得到逼真的虛擬化身,就需要使虛擬化身具有人性化,實(shí)現(xiàn)真實(shí)的人體動(dòng)作。其中最基本的就是行走,即虛擬化身在虛擬場景中如何引導(dǎo)瀏覽者瀏覽場景,在遇到障礙物時(shí)如何避障。 通過 Avatar Studio 軟件生成的虛擬人能夠產(chǎn)生一些簡單動(dòng)作,通過 ROUTE 節(jié)點(diǎn)的 enentIn 和 eventOut 域來進(jìn)行傳遞, avatar.wrl 文件的動(dòng)作 觸發(fā)代碼如下: 動(dòng)效果,此時(shí)需要腳本語言。腳本語言是一種靈活的互動(dòng)效果實(shí)現(xiàn)方式。 VRML 中常用的腳本語言是 ECMAScript(典型的是 JavaScript)、 VrmlScript 和 Java。 JavaScript和 VrmlScript 是 VR Pad 軟件自帶的兩種腳本語言,只適合在簡單的場景中使用,對于復(fù)雜的場景需要采用 Java。這里通過加載 path 和 obstacle 文件實(shí)現(xiàn)虛擬人的導(dǎo)航路徑規(guī)劃。 目前 VRML 編程接口有以下四種方式: 1)內(nèi)嵌在 VRML 的 Script 節(jié)點(diǎn)中的描述 性腳本語言VrmlScript 和 JavaScript; 2)瀏覽器 +VRML 插件方式,通過對 VRML EAI 外部創(chuàng)作接口進(jìn)行編程,允許 VRML 世界與網(wǎng)頁其它對象相互溝通; 3)在 VRML 的 Script 節(jié)點(diǎn)中引用外部 Java 類,用來實(shí)現(xiàn)一些特殊的、 VrmlScript 語言所不能實(shí)現(xiàn)的功能; 4)應(yīng)用 VRML 解釋器提供的 Automation 接口進(jìn)行編程。 設(shè)計(jì)中主要使用了前三種編程接口,通過觸發(fā)器ProximitySensor 來檢測用戶在場景中的移動(dòng),當(dāng)有用戶進(jìn)入或退出場 景時(shí),該節(jié)點(diǎn)產(chǎn)生事件。被感應(yīng)的區(qū)域由 size 和center 設(shè)定,它們在局部坐標(biāo)空間定義一個(gè)矩形區(qū)域,該區(qū)域的各條邊平行于各個(gè)主坐標(biāo)軸。當(dāng)用戶進(jìn)入該區(qū)域時(shí),將產(chǎn)生兩個(gè)事件 isActive 為真和 enterTime 為當(dāng)前時(shí)間,當(dāng)用戶離開該區(qū)域時(shí),將產(chǎn)生兩個(gè)事件 isActive 為假和 exitTime為當(dāng)前時(shí)間。當(dāng)用戶在該區(qū)域時(shí),位置的改變將會(huì)產(chǎn)生position_changed 事件,方向的改變將產(chǎn)生orientation_changed 事件。 ProximitySensor 的語法定義如下: 在 Java 程序中 ,通過 EAI 獲得該 ProximitySensor 的position_changed 事件出口。通過 EAI 要求自動(dòng)捕獲事件,即當(dāng)事件發(fā)生時(shí),外部的 Java 代碼自動(dòng)獲得通知,并由參數(shù)獲得事件數(shù)據(jù)進(jìn)行處理。 3 結(jié)束語 虛擬現(xiàn)實(shí)是一個(gè)充滿活力,具有巨大應(yīng)用前景的高新技術(shù)領(lǐng)域。虛擬化身是虛擬現(xiàn)實(shí)領(lǐng)域一個(gè)很具有發(fā)展?jié)摿Φ姆较?。文中通過在虛擬場景中添加虛擬化身,來增加場景的活力和瀏覽者的沉浸感。未來虛擬化身將不止應(yīng)用于虛

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論