所屬欄目:計(jì)算機(jī)應(yīng)用論文 發(fā)布日期:2012-07-03 08:46 熱度:185
【摘要】網(wǎng)頁游戲近年來發(fā)展迅猛,市場不斷擴(kuò)大。由于網(wǎng)上存在著大量的VRML/X3D資源,本文討論了在VRML/X3D基礎(chǔ)上,結(jié)合其他相關(guān)技術(shù)制作網(wǎng)頁游戲的方法,為低成本的網(wǎng)頁游戲制作提供了一條思路。
【關(guān)鍵詞】VRML,X3D,網(wǎng)頁游戲
1. 引言
網(wǎng)頁游戲是一種基于瀏覽器的網(wǎng)絡(luò)游戲,它無需安裝客戶端即可進(jìn)行游戲。隨著計(jì)算機(jī)硬件和軟件能力的不斷提升,網(wǎng)頁游戲成為可能并且逐步普及。網(wǎng)頁游戲早期多為2D的,目前正逐步向3D方向發(fā)展。
目前網(wǎng)頁游戲前端開發(fā)的主流技術(shù)是Flash[1]。VRML是最早的3D建模語言,網(wǎng)絡(luò)上存在著大量共享的VRML資源。如果用VRML替代Flash作為前端開發(fā)技術(shù),則可以很好的利用已有的VRML資源,大大地節(jié)約開發(fā)成本。
2. VRML的交互研究
網(wǎng)頁游戲可以看成是一種特殊的網(wǎng)頁交互程序,其基本交互過程為:將客戶端數(shù)據(jù)提交到服務(wù)器端,服務(wù)器端處理完以后再展現(xiàn)在客戶端。相比普通的網(wǎng)頁,網(wǎng)頁游戲所進(jìn)行的數(shù)據(jù)交互更加復(fù)雜和頻繁,而且對(duì)實(shí)時(shí)性的要求也更高。
VRML提供諸多交互手段,通常可分成非編程交互和編程交互兩種交互方法[2]。非編程交互是一種基于VRML內(nèi)建節(jié)點(diǎn)的交互方法,是一種靜態(tài)方式的交互,即場景中對(duì)象狀態(tài)的改變是預(yù)先設(shè)定好的,不需要什么操作行為來激發(fā)其運(yùn)動(dòng)或變化,它通過預(yù)設(shè)的運(yùn)動(dòng)方式,由用戶來決定觸發(fā)。具體而言,它會(huì)首先通過檢測器檢測到用戶在虛擬場景中的動(dòng)作,然后通過事件的傳遞來實(shí)現(xiàn)虛擬環(huán)境和用戶的交互。
編程交互式是一種動(dòng)態(tài)方式的交互,它是通過一段外部邏輯程序來決定事件的產(chǎn)生,它具有詢問對(duì)象狀態(tài)的能力,再基于這些狀態(tài)做出相應(yīng)決定,并改變場景的狀態(tài)。具體來說,就是通過Java和JavaScript腳本來實(shí)現(xiàn)動(dòng)態(tài)交互,實(shí)現(xiàn)互動(dòng)場景的動(dòng)態(tài)行為,使用它可以在控制方式上做出很大的進(jìn)步。VRML有自己的API,通過這些API接口提供了一個(gè)給Java程序訪問VRML瀏覽器界面的環(huán)境,而Java對(duì)VRML的支持是通過附加的封裝類來實(shí)現(xiàn)的,在這些類中實(shí)現(xiàn)了對(duì)VRML虛擬場景的全部控制。
.3.X3D擴(kuò)展
X3D可看做VRML的升級(jí)版本,部分代碼和VRML兼容,它集XML,JAVA,流技術(shù)等先進(jìn)技術(shù)于一身,具有更強(qiáng)大的3D計(jì)算能力、渲染質(zhì)量和網(wǎng)絡(luò)傳輸速度,是可交互操作,可擴(kuò)展,跨平臺(tái)的網(wǎng)絡(luò)3D內(nèi)容,在虛擬現(xiàn)實(shí)系統(tǒng)交互功能實(shí)現(xiàn)方面比VRML技術(shù)有明顯的優(yōu)勢(shì)。
要實(shí)現(xiàn)更復(fù)雜的人機(jī)交互功能,需要用外部語言編寫Script節(jié)點(diǎn)的腳本程序,借助X3D的事件和路由機(jī)制,通過傳感器節(jié)點(diǎn)及Script節(jié)點(diǎn)形成Route--Graph(路由圖),場景隨著用戶的操作動(dòng)態(tài)變化,從而實(shí)現(xiàn)復(fù)雜動(dòng)態(tài)場景交互。X3D兼容VRML,對(duì)于VRML代碼只要做下聲明即可成為X3D代碼。
為了便于交互,要對(duì)整體場景采用分割技術(shù)[3]。所謂分割技術(shù),就是把整體場景分成若干子場景和實(shí)體,子場景可以再分成若干子場景和實(shí)體。可以根據(jù)實(shí)際情況選擇分割層次,即整個(gè)場景最終是由實(shí)體組成的,實(shí)體是組成虛擬場景最基本的單元,比如一扇門,一顆樹等。
封裝先從最基本的實(shí)體開始,把每個(gè)實(shí)體的三維模型創(chuàng)建出來,保存成單個(gè)文件。在此基礎(chǔ)上,構(gòu)建實(shí)體和場景數(shù)據(jù)庫,通過X3D的數(shù)據(jù)庫驅(qū)動(dòng)動(dòng)態(tài)建模功能,動(dòng)態(tài)地創(chuàng)建出各層的子場景和最終的整體場景,實(shí)體之間和子場景之間的連接可以使用Inline命令,各個(gè)實(shí)體和子場景需要?jiǎng)討B(tài)的數(shù)據(jù)都存放在數(shù)據(jù)庫中。X3D只是創(chuàng)建了這些實(shí)體如何顯示的場景模板。創(chuàng)建好場景模板后,開發(fā)者和使用者只需要修改數(shù)據(jù)庫的數(shù)據(jù)就可以定制不同的場景。
采用X3D對(duì)場景進(jìn)行分割建模后,可以動(dòng)態(tài)或者靜態(tài)的進(jìn)行交互設(shè)計(jì)。對(duì)于一已經(jīng)封裝為X3D格式文件的物體,要實(shí)現(xiàn)其移動(dòng)動(dòng)畫,可以設(shè)置一個(gè)BillBoard節(jié)點(diǎn),將物體放入該節(jié)點(diǎn)內(nèi),并定義一個(gè)時(shí)間傳感器和一個(gè)接觸傳感器以及一個(gè)動(dòng)畫位置插補(bǔ)器,與JavaScript結(jié)合用來控制物體的移動(dòng)。
4.多用戶交互
最后,要實(shí)現(xiàn)多用戶交互,還要聯(lián)合ASP的編程技術(shù)在數(shù)據(jù)庫上進(jìn)行交互。先把數(shù)據(jù)庫與ASP進(jìn)行連接來讀取數(shù)據(jù)庫中的內(nèi)容,緊接著把讀到的數(shù)據(jù)傳輸給瀏覽器,然后由瀏覽器來結(jié)合VRML中的語句進(jìn)行渲染。這樣用戶進(jìn)行操作時(shí),操作產(chǎn)生的數(shù)據(jù)改變會(huì)提交給數(shù)據(jù)庫來實(shí)現(xiàn)數(shù)據(jù)庫中VRML場景中物體屬性的更改,從而在不斷刷新的網(wǎng)頁上體現(xiàn)出來。在同一個(gè)時(shí)間段之內(nèi)可以實(shí)現(xiàn)多個(gè)用戶對(duì)虛擬場景中的VRML/X3D對(duì)象進(jìn)行操作,而相互之間只要刷新網(wǎng)頁和讀取數(shù)據(jù)庫中的新數(shù)據(jù)就可實(shí)現(xiàn)遠(yuǎn)程交互了[4]。ASP和VRML結(jié)合的部分源代碼如下:
Transform
{.
Translation<%=rs(man)%>
Rotation<%=rs(“man”)>
Children
[
Inline
{url“<%=rs(“man”)%”}
]
}
5.總結(jié)
通過以上分析,基于經(jīng)典VRML虛擬世界“泰偌切蒂蘭城”,已開發(fā)出一個(gè)可供多人實(shí)時(shí)交互的簡單網(wǎng)頁游戲,經(jīng)過測試,多人交互實(shí)時(shí)性可滿足要求。
由于開發(fā)工具的缺乏,VRML在圖像質(zhì)量方面還無法與主流網(wǎng)頁游戲競爭,VRML的優(yōu)勢(shì)在于成本的低廉。在某些場合,比如說產(chǎn)品推廣或者項(xiàng)目介紹,將內(nèi)容用VRML制作成網(wǎng)頁游戲形式將會(huì)帶來驚喜。
參考文獻(xiàn):
[1]徐鹥.網(wǎng)頁游戲開發(fā)技術(shù)的探討與研究[J].中國信息科技,2010,14:046
[2]孫范榮,王鵬等.基于VRML的虛擬現(xiàn)實(shí)技術(shù)應(yīng)用[J].系統(tǒng)仿真學(xué)報(bào),2007,16:161
[3]嚴(yán)林.虛擬現(xiàn)實(shí)在室內(nèi)設(shè)計(jì)中的應(yīng)用[D].武漢科技大學(xué),2010
[4]吳姣黎.三維數(shù)字城市的研究與應(yīng)用[D].西南交通大學(xué),2001
文章標(biāo)題:VRML在網(wǎng)頁游戲制作中的應(yīng)用
轉(zhuǎn)載請(qǐng)注明來自:http://www.56st48f.cn/fblw/dianxin/yingyong/12485.html
声明:①文献来自知网、维普、万方等检索数据库,说明本文献已经刊登,恭喜作者.②如果您是作者且不想本平台展示文献信息,可联系在线人员予以删除.
攝影藝術(shù)領(lǐng)域AHCI期刊推薦《Phot...關(guān)注:106
Nature旗下多學(xué)科子刊Nature Com...關(guān)注:152
中小學(xué)教師值得了解,這些教育學(xué)...關(guān)注:47
2025年寫管理學(xué)論文可以用的19個(gè)...關(guān)注:192
測繪領(lǐng)域科技核心期刊選擇 輕松拿...關(guān)注:64
及時(shí)開論文檢索證明很重要關(guān)注:52
中國水產(chǎn)科學(xué)期刊是核心期刊嗎關(guān)注:54
國際出書需要了解的問題解答關(guān)注:58
合著出書能否評(píng)職稱?關(guān)注:48
電信學(xué)有哪些可投稿的SCI期刊,值...關(guān)注:66
通信工程行業(yè)論文選題關(guān)注:73
SCIE、ESCI、SSCI和AHCI期刊目錄...關(guān)注:121
評(píng)職稱發(fā)論文好還是出書好關(guān)注:68
復(fù)印報(bào)刊資料重要轉(zhuǎn)載來源期刊(...關(guān)注:51
英文期刊審稿常見的論文狀態(tài)及其...關(guān)注:69
Web of Science 核心合集期刊評(píng)估...關(guān)注:59
電子信息論文范文
智能科學(xué)技術(shù)論文 廣播電視論文 光電技術(shù)論文 計(jì)算機(jī)信息管理論文 計(jì)算機(jī)網(wǎng)絡(luò)論文 計(jì)算機(jī)應(yīng)用論文 通信論文 信息安全論文 微電子應(yīng)用論文 電子技術(shù)論文 生物醫(yī)學(xué)工程論文 軟件開發(fā)論文
SCI期刊分析
copyright © www.56st48f.cn, All Rights Reserved 投诉邮箱:qianyanxs@163.com
搜論文知識(shí)網(wǎng) 冀ICP備15021333號(hào)-3