版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML742023/7/17第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML74第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML
4.1 VRML語(yǔ)言概述4.2 VRML的語(yǔ)法基礎(chǔ)4.3 VRML的空間造型4.4 VRML的場(chǎng)景效果4.5 VRML的動(dòng)態(tài)交互第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.1 VRML語(yǔ)言概述VRML(VirtualRealityModelingLanguage,虛擬現(xiàn)實(shí)建模語(yǔ)言)是一種用于創(chuàng)建三維造型和渲染的圖形描述語(yǔ)言。它將二維、三維圖形和動(dòng)畫(huà)、音頻、視頻等多種效果融合在一起,使信息能夠在一個(gè)具有空間感和實(shí)時(shí)感的三維空間中被表達(dá)出來(lái)。同時(shí),它提供靈活有效的人機(jī)交互功能,使虛擬世界的真實(shí)性和交互性得到更充分的體現(xiàn)。將VRML與WWW一起使用,還可以創(chuàng)建一個(gè)通過(guò)Internet和WWW鏈接而成的網(wǎng)絡(luò)虛擬世界。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.1 VRML語(yǔ)言概述VRML把“虛擬世界”看做是一個(gè)“場(chǎng)景”,而場(chǎng)景中的一切都被看做是“對(duì)象”,對(duì)場(chǎng)景中對(duì)象的描述就構(gòu)成了VRML文件。VRML文件以正文格式存儲(chǔ),并以.wrl或.wrz擴(kuò)展名作為后綴。當(dāng)用戶通過(guò)瀏覽器訪問(wèn)一個(gè)VRML文件時(shí),瀏覽器會(huì)將VRML中的信息解釋成對(duì)目標(biāo)造型和場(chǎng)景的描述,并根據(jù)用戶在場(chǎng)景中的不同狀態(tài)實(shí)時(shí)繪制和渲染這個(gè)虛擬空間。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.1 VRML語(yǔ)言概述HTML用于定義可與更多信息相關(guān)聯(lián)的二維頁(yè)面的布局和內(nèi)容。VRML用于定義可與更多信息相關(guān)聯(lián)的三維頁(yè)面的布局和內(nèi)容。VRML不僅是針對(duì)VR,也是針對(duì)Web設(shè)計(jì)的。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.1 VRML語(yǔ)言概述4.1.1 VRML的發(fā)展歷程4.1.2 VRML的特點(diǎn)4.1.3 VRML編輯器4.1.4VRML瀏覽器第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.1 VRML語(yǔ)言概述4.1.1 VRML的發(fā)展歷程1994年,MarkPesce和TonyParisi創(chuàng)建了可用來(lái)瀏覽Internet上三維畫(huà)面的瀏覽器原型,稱(chēng)為L(zhǎng)abyrinth(迷宮),首次提出了VRML一詞。1994年,由SGI公司的工程師GavinBell組織制訂了VRML1.0的規(guī)范草案,并于同年10月在芝加哥召開(kāi)的第二屆萬(wàn)維網(wǎng)國(guó)際會(huì)議上公布。VRML2.0是以SGI公司的MovingWorlds提案為基礎(chǔ)的,節(jié)點(diǎn)類(lèi)型被擴(kuò)展為54種,支持的對(duì)象也已包括動(dòng)態(tài)和靜態(tài)兩大類(lèi)。VRML的國(guó)際標(biāo)準(zhǔn)草案于1998年1月正式獲得ISO的認(rèn)定和發(fā)布,通常被稱(chēng)為VRML97。1998年,VRML組織更名為Web3D組織,并制訂了一個(gè)新的標(biāo)準(zhǔn)X3D(Extensible3D)。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.1 VRML語(yǔ)言概述4.1.2 VRML的特點(diǎn)基于Internet共享的虛擬世界較低的配置需求
真正的動(dòng)態(tài)交互適用于網(wǎng)絡(luò)現(xiàn)狀的技術(shù)開(kāi)放式的標(biāo)準(zhǔn)
第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.1 VRML語(yǔ)言概述4.1.3 VRML編輯器編輯VRML源程序代碼,可以使用幾乎任何一種文本編輯器。在此推薦一個(gè)功能強(qiáng)大并且使用便捷的VRML編輯器——VrmlPad。VrmlPad的安裝與運(yùn)行:VrmlPad的試用版可以從VRML的資源站點(diǎn)下載安裝即可。VrmlPad主要功能包括文件管理、文本編輯、瀏覽等。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.1 VRML語(yǔ)言概述4.1.4VRML瀏覽器
瀏覽VRML虛擬空間,需要使用瀏覽器插件,常用的有:CosmoPlayerVRML瀏覽器MicrosoftVRML2.0瀏覽器其它瀏覽器,如SVR(兼容
VRML97),CommunityPlace,
LiquidReality等。顯示在CosmoPlayerVRML瀏覽器中的三維虛擬會(huì)議大廳第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.1 VRML語(yǔ)言概述4.1.4VRML瀏覽器ParallelGraphicsCortona3DVRML瀏覽器第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.2VRML的語(yǔ)法基礎(chǔ)4.2.1 VRML的組成要素4.2.2 VRML的文件結(jié)構(gòu)4.2.3 VRML的空間計(jì)量第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.2VRML的語(yǔ)法基礎(chǔ)4.2.1 VRML的組成要素1、節(jié)點(diǎn)(Node)和域(Field)
節(jié)點(diǎn)是VRML文件中最基本也是最核心的組成部分。單個(gè)節(jié)點(diǎn)可描述造型、顏色、光照、視點(diǎn)、傳感器等。VRML虛擬世界的對(duì)象往往是由一組具有一定層次結(jié)構(gòu)關(guān)系的節(jié)點(diǎn)來(lái)構(gòu)造。域?qū)儆诠?jié)點(diǎn),由節(jié)點(diǎn)及其相關(guān)域定義的造型或?qū)傩栽赩RML空間中被視為一個(gè)整體。不同的節(jié)點(diǎn)可包含不同的域,域之間沒(méi)有次序之分。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.2VRML的語(yǔ)法基礎(chǔ)4.2.1 VRML的組成要素1、節(jié)點(diǎn)(Node)和域(Field)典型節(jié)點(diǎn)語(yǔ)法定義如下:第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.2VRML的語(yǔ)法基礎(chǔ)4.2.1 VRML的組成要素2、事件(Event)和路由(Route)事件的接口類(lèi)型有事件入口和事件出口兩種:事件入口(eventIn,也稱(chēng)入事件)是節(jié)點(diǎn)的邏輯接收器,它負(fù)責(zé)監(jiān)聽(tīng)和接收外界事件;事件出口(eventOut,也稱(chēng)出事件)是節(jié)點(diǎn)的邏輯發(fā)送器,它負(fù)責(zé)向外界發(fā)送節(jié)點(diǎn)產(chǎn)生的事件。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.2VRML的語(yǔ)法基礎(chǔ)4.2.1 VRML的組成要素2、事件(Event)和路由(Route)事件出口和事件入口通過(guò)路徑相連,這就是VRML文件中的另一個(gè)基本組成部分——路由。路由為事件的傳播提供了傳輸通道,使事件在事件鏈中依次向前傳遞,每經(jīng)過(guò)一個(gè)節(jié)點(diǎn)就改變?cè)摴?jié)點(diǎn)的一些域,從而引發(fā)VRML世界一系列的變化。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.2VRML的語(yǔ)法基礎(chǔ)4.2.1 VRML的組成要素2、事件(Event)和路由(Route)典型的事件路由定義如下:DEFSENSORTouchSensor{}#定義一個(gè)觸摸傳感器……DEFSOUNDSound{}#定義一個(gè)聲音對(duì)象……ROUTESENSOR.touchTimeTOSOUND.startTime#建立事件的路由第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.2VRML的語(yǔ)法基礎(chǔ)4.2.1 VRML的組成要素3、腳本(Script)
Java、JavaScript行為腳本、插補(bǔ)器、C++函數(shù)、VRMLScript、LiveConnect、VRML外部制作界面等,都是用于生成動(dòng)態(tài)、復(fù)雜及逼真的VRML場(chǎng)景的技術(shù)、語(yǔ)言和API(ApplicationProgrammingInterface)。Script節(jié)點(diǎn)可以看作是一個(gè)節(jié)點(diǎn)的外殼:它擁有域、eventIn事件、eventOut事件。其本身沒(méi)有任何動(dòng)作,但可以通過(guò)程序來(lái)賦予腳本節(jié)點(diǎn)動(dòng)作。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.2VRML的語(yǔ)法基礎(chǔ)4.2.1 VRML的組成要素4、原型(Prototype)
用戶還可以通過(guò)原型構(gòu)造機(jī)制定義新的節(jié)點(diǎn)類(lèi)型,例如新的幾何節(jié)點(diǎn)、新的造型、新的材料和新的聲音節(jié)點(diǎn)等。新節(jié)點(diǎn)類(lèi)型既可以在該原型定義的文件中引用(即內(nèi)部原型,PROTO),也可以在外部文件中定義后在其它VRML文件中引用(即外部原型,EXTERNPROTO)。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.2VRML的語(yǔ)法基礎(chǔ)4.2.2 VRML的文件結(jié)構(gòu)典型的VRML文件結(jié)構(gòu)如下:#VRMLV2.0utf8#VRML文件頭節(jié)點(diǎn)名{#創(chuàng)建VRML中各種類(lèi)型的節(jié)點(diǎn)以構(gòu)成造型域名域值#設(shè)置節(jié)點(diǎn)的各個(gè)域和域值……}……Script{#添加腳本節(jié)點(diǎn),編寫(xiě)腳本程序……}ROUTE……TO……#建立出事件與入事件間的路由第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.2VRML的語(yǔ)法基礎(chǔ)4.2.2 VRML的文件結(jié)構(gòu)1、文件頭頭文件(#VRMLV2.0utf8)向?yàn)g覽器表述了如下含義:本文件是一個(gè)VRML文件。本文件遵循VRML規(guī)范的2.0版本。本文件使用國(guó)際UTF-8字符集。UTF-8是UNICODE的一種變長(zhǎng)字符編碼又稱(chēng)萬(wàn)國(guó)碼,由KenThompson于1992年創(chuàng)建。現(xiàn)在已經(jīng)標(biāo)準(zhǔn)化為RFC3629。UTF-8用1到6個(gè)字節(jié)編碼UNICODE字符。用在網(wǎng)頁(yè)上可以在同一頁(yè)面顯示中文簡(jiǎn)體繁體及其它語(yǔ)言(如日文,韓文)第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.2VRML的語(yǔ)法基礎(chǔ)4.2.2 VRML的文件結(jié)構(gòu)2、造型物體的造型(又稱(chēng)場(chǎng)景圖)由節(jié)點(diǎn)按一定的層次關(guān)系組成,它用于構(gòu)造虛擬世界的主體——各種靜態(tài)和動(dòng)態(tài)對(duì)象。在造型層次模型中,上下層節(jié)點(diǎn)之間存在兩種關(guān)系:包容關(guān)系和父子關(guān)系。節(jié)點(diǎn)的包容關(guān)系是指后代節(jié)點(diǎn)作為祖先節(jié)點(diǎn)的一個(gè)屬性域而存在。在父子關(guān)系中,子節(jié)點(diǎn)并不直接出現(xiàn)在父節(jié)點(diǎn)的屬性域中,它們集中在父節(jié)點(diǎn)的MFNode(多節(jié)點(diǎn)數(shù)據(jù)類(lèi)型)子域內(nèi),依次排列。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.2VRML的語(yǔ)法基礎(chǔ)4.2.2 VRML的文件結(jié)構(gòu)3、路由路由不是節(jié)點(diǎn),路由語(yǔ)句可以放置在節(jié)點(diǎn)內(nèi)域可以出現(xiàn)的任何地方。建議將所有ROUTE語(yǔ)句集中放置在文件的末尾,以構(gòu)成一個(gè)系統(tǒng)的事件體系。路由中引用的節(jié)點(diǎn)名稱(chēng)都應(yīng)該在ROUTE語(yǔ)句之前被定義。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.2VRML的語(yǔ)法基礎(chǔ)4.2.2 VRML的文件結(jié)構(gòu)4、注釋注釋信息以符號(hào)“#”開(kāi)始,結(jié)束于該行的末尾,VRML不支持多行注釋。文件頭中的“#”不代表注釋含義。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.2VRML的語(yǔ)法基礎(chǔ)4.2.3 VRML的空間計(jì)量1、VRML空間坐標(biāo)系VRML的立體空間采用三維坐標(biāo)系。該坐標(biāo)系的原點(diǎn)位于VRML瀏覽器的中心,X軸的正向水平向右,Y軸的正向垂直向上,Z軸的正向垂直向前,即指向?yàn)g覽者,如圖所示。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.2VRML的語(yǔ)法基礎(chǔ)4.2.3 VRML的空間計(jì)量2、VRML的計(jì)量單位VRML描述長(zhǎng)度的計(jì)量單位是VRML單位。它與現(xiàn)實(shí)世界或其它三維建模工具的計(jì)量單位都沒(méi)有可比性。VRML描述旋轉(zhuǎn)等角度的計(jì)量單位是弧度。常用角度與弧度的對(duì)應(yīng)關(guān)系如表所示。角度030456090120135150180弧度00.5230.7851.0471.5712.0942.3562.6183.141第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.2VRML的語(yǔ)法基礎(chǔ)4.2.3 VRML的空間計(jì)量3、VRML的色彩規(guī)范VRML使用紅綠藍(lán)(RGB)顏色規(guī)范來(lái)描述造型、光線和背景等的色彩。RGB顏色包含三個(gè)域值均在0.0~1.0之間的浮點(diǎn)數(shù),它們分別對(duì)應(yīng)紅、綠、藍(lán)三種顏色的取值。0.0值表示該顏色被關(guān)閉,1.0值表示該顏色完全打開(kāi)。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.2VRML的語(yǔ)法基礎(chǔ)紅綠藍(lán)合成顏色0.00.00.0黑色0.00.01.0藍(lán)色0.01.00.0綠色1.00.00.0紅色1.01.01.0白色1.01.00.0黃色0.01.01.0藍(lán)綠色1.00.01.0紫紅色0.750.750.75淺灰色0.250.250.25暗灰色0.50.50.5中灰色0.50.00.0暗紅色0.00.50.0暗綠色0.00.00.5暗藍(lán)色RGB三基色組合顏色示例第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.3VRML的空間造型4.3.1 基本造型4.3.2 空間變換4.3.3 文本造型4.3.4 復(fù)雜造型第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.3VRML的空間造型任何一個(gè)VRML虛擬場(chǎng)景中的空間造型都必須使用Shape(形狀)節(jié)點(diǎn)加以創(chuàng)建。Shape節(jié)點(diǎn)的語(yǔ)法格式如下:
Shape{ appearanceNULL#SFNode geometryNULL#SFNode }第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.3VRML的空間造型(1)(2)(3)父節(jié)點(diǎn)域名域值或子節(jié)點(diǎn)域值類(lèi)型Shape造型節(jié)點(diǎn)appearance外觀特征域NULL空值SFNode單值類(lèi)型Appearance外觀節(jié)點(diǎn)geometry幾何形狀域NULL空值Box立方體節(jié)點(diǎn)Sphere球體節(jié)點(diǎn)Cone圓錐體節(jié)點(diǎn)Cylinder圓柱體節(jié)點(diǎn)PointSet點(diǎn)集節(jié)點(diǎn)IndexedLineSet線集節(jié)點(diǎn)IndexedFaceSet面集節(jié)點(diǎn)Extrusion擠出造型節(jié)點(diǎn)ElevationGrid網(wǎng)格標(biāo)高造型節(jié)點(diǎn)Text文本造型節(jié)點(diǎn)第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.3VRML的空間造型(1)(2)(3)父節(jié)點(diǎn)域名域值或子節(jié)點(diǎn)域值類(lèi)型Appearance外觀節(jié)點(diǎn)material材質(zhì)域NULL空值SFNode單值類(lèi)型Material材質(zhì)節(jié)點(diǎn)texture紋理映像域NULL空值ImageTexture圖像紋理節(jié)點(diǎn)PixelTexture像素紋理節(jié)點(diǎn)MovieTexture電影紋理節(jié)點(diǎn)textureTransform紋理坐標(biāo)變幻域NULL空值IndexedFaceSet面集節(jié)點(diǎn)第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.3VRML的空間造型Box{size2.02.02.0#SFVec3f}Sphere{radius1.0#SFFloat}Cone{bottomRadius1.0#SFFloatheight2.0#SFFloatsideTRUE#SFBoolbottomTRUE#SFBool}Cylinder{radius1.0#SFFloatheight2.0#SFFloatsideTRUE#SFBoolbottomTRUE#SFBooltopTRUE#SFBool}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.3VRML的空間造型Material{diffuseColor0.80.80.8#exposedFieldSFColorambientIntensify0.2#exposedFieldSFFloatspecularColor000#exposedFieldSFColoremissiveColor000#exposedFieldSFColorshininess0.2#exposedFieldSFFloattransparency0#exposedFieldSFFloat}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.3VRML的空間造型視覺(jué)效果材料漫反射顏色環(huán)境光反射度物體鏡面反射顏色材質(zhì)外觀亮度diffuseColorambientIntensityspecularColorshininess黃金0.50.30.00.40.70.70.60.2白銀0.50.50.70.40.80.80.90.2銅0.40.20.00.280.80.40.00.1鋁0.30.30.50.30.70.70.80.1紅塑料0.80.20.20.10.80.80.80.15綠塑料0.20.20.80.10.80.80.80.15藍(lán)塑料0.20.80.20.10.80.80.80.15第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.3VRML的空間造型4.3.1 基本造型VRML的基本幾何造型節(jié)點(diǎn)有4種:Box(立方體)節(jié)點(diǎn)Cone(圓錐體)節(jié)點(diǎn)Cylinder(圓柱體)節(jié)點(diǎn)Sphere(球體)節(jié)點(diǎn)[例4-1]制作燈籠參見(jiàn)教材P57。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.3VRML的空間造型4.3.2 空間變換利用Transform(變換)節(jié)點(diǎn)可以在VRML空間創(chuàng)建新的坐標(biāo)系,可以隨意translation(平移)、rotation(旋轉(zhuǎn))和scale(縮放)。
[例4-2]制作茶幾參見(jiàn)教材P58。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.3VRML的空間造型4.3.2 空間變換Transform{children[]#exposedFieldMFNodetranslation0.00.00.0#exposedFieldSFVec3frotation0.00.01.00.0#exposedFieldSFRotationscale1.01.01.0#exposedFieldSFVec3f……}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.3VRML的空間造型4.3.3 文本造型Text(文本)節(jié)點(diǎn)用來(lái)創(chuàng)建文本造型,通常使用Shape節(jié)點(diǎn)的geometry域的域值。VRML文本造型是一個(gè)沒(méi)有厚度的平面造型,但也可以具有不同的外觀和材質(zhì)屬性。
[例4-3]恭賀新年參見(jiàn)教材P60。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.3VRML的空間造型4.3.4 文本造型Text{string[]#exposedFieldMFStringlength[]#exposedFieldMFFloatmaxExtent0.0#exposedFieldSFFloatfontStyleNULL#exposedFieldSFNode}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.3VRML的空間造型4.3.4 文本造型
FontStyle{family“SERIF”#SFStringsize1.0#SFFloatspacing1.0#SFFloatstyle“PLAIN”#SFStringhorizontalTRUE#SFBooljustify[“BEGIN”]#SFStringleftToRightTRUE#SFBooltopToBottomTRUE#SFBoollanguage“”#SFString}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.3VRML的空間造型4.3.4 復(fù)雜造型VRML提供了一些非常靈活的節(jié)點(diǎn)使用戶能夠通過(guò)使用點(diǎn)、線和面等來(lái)構(gòu)造所需的幾何形體。這些節(jié)點(diǎn)主要包括:PointSet(點(diǎn)集)、IndexedLineSet(線集)、IndexedFaceSet(面集)以及ElevationGrid(海拔柵格)、Extrusion(擠出造型)。[例4-4]制作椅子參見(jiàn)教材P62。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.3VRML的空間造型4.3.4 復(fù)雜造型PointSet{
coordNULL#exposedFieldSFNodecolorNULL#exposedFieldSFNode}Coordinate{
point[]#exposedFieldMFVec3f}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.3VRML的空間造型4.3.4 復(fù)雜造型IndexedLineSet{
coordNULL#exposedFieldSFNode
coordIndex[]#MFInt32colorNULL#exposedFieldSFNodecolorIndex[]#MFInt32……}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.3VRML的空間造型4.3.4 復(fù)雜造型IndexedFaceSet{
coordNULL#exposedFieldSFNode
coordIndex[]#MFInt32texCoordNULL#exposedFieldSFNodetexCoordIndex[]#MFInt32colorNULL#exposedFieldSFNodecolorIndex[]#MFInt32……}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.3VRML的空間造型4.3.4 復(fù)雜造型Extrusion{
crossSection[11,1-1,-1-1,-11,11]#MFVec2f
spine[000,010]#MFVec2f
scale11#MFVec2forientation0010#MFRotation……}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.4VRML的場(chǎng)景效果4.4.1 紋理映射4.4.2 聲音技術(shù)4.4.3 光照效果4.4.4 其它效果第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.4VRML的場(chǎng)景效果4.4.1 紋理映射紋理是一種位圖,把紋理圖按照一定規(guī)則包裹到幾何體造型表面的過(guò)程稱(chēng)為紋理映射。VRML提供了3種紋理節(jié)點(diǎn),包括ImageTexture(圖像紋理)節(jié)點(diǎn)、PixelTexture(像素紋理)節(jié)點(diǎn)和MovieTexture(電影紋理)節(jié)點(diǎn)。[例4-5]制作書(shū)柜參見(jiàn)教材P64。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.4VRML的場(chǎng)景效果4.4.1 紋理映射ImageTexture{url[]#exposedFieldMFStringrepeatSTURE#SFBoolrepeatTTRUE#SFBool}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.4VRML的場(chǎng)景效果4.4.1 紋理映射PixelTexture{image000#exposedFieldMFStringrepeatSTURE#SFBoolrepeatTTRUE#SFBool}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.4VRML的場(chǎng)景效果4.4.1 紋理映射MovieTexture{url[]#exposedFieldMFStringloopFALSE#exposedFieldSFBoolspeed1.0#exposedFieldSFFloatstartTime0.0#exposedFieldSFTimestopTime0.0#exposedFieldSFTimerepeatSTURE#SFBoolrepeatTTRUE#SFBool
……}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.4VRML的場(chǎng)景效果4.4.2 聲音技術(shù)在VRML中加入聲音涉及到兩個(gè)部分:聲源和聲音發(fā)射器。Sound(聲音)節(jié)點(diǎn)用于創(chuàng)建聲音發(fā)射器,并指定場(chǎng)景中聲源的位置以及立體化的表現(xiàn)形式。AudioClip節(jié)點(diǎn)和MovieTexture節(jié)點(diǎn)則用于提供聲源,僅可以作為Sound節(jié)點(diǎn)中source域的域值。VRML場(chǎng)景中可引用的聲音文件類(lèi)型主要包括WAV、MID和MPEG等3種。[例4-6]放映電影參見(jiàn)教材P66。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.4VRML的場(chǎng)景效果4.4.2 聲音技術(shù)Sound{sourceNULL#exposedFieldSFNodelocation0.00.00.0#exposedFieldSFVec3fdirection0.00.01.0#exposedFieldSFVec3fintensity1.0#exposedFieldSFFloatmaxBack10.0#exposedFieldSFFloatmaxFront10.0#exposedFieldSFFloatminBack10.0#exposedFieldSFFloatminFront10.0#exposedFieldSFFloatpriority0.0#exposedFieldSFFloatspatializeTURE#exposedFieldSFBool}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.4VRML的場(chǎng)景效果4.4.2 聲音技術(shù)AudioClip{url[]#exposedFieldMFStringdescription““#exposedFieldMFStringdirection0.00.01.0#exposedFieldSFVec3floopFALSE#exposedFieldSFBoolpitch1.0#exposedFieldSFFloatstartTime0.0#exposedFieldSFTimestopTime0.0#exposedFieldSFTime
……}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.4VRML的場(chǎng)景效果4.4.3 光照效果在VRML中創(chuàng)建光源時(shí),除了要指定光源的空間位置、光線的發(fā)射方向等,還需要設(shè)置發(fā)射光線的顏色和亮度等。VRML中光源節(jié)點(diǎn)的分類(lèi)及特點(diǎn)如下:PointLight點(diǎn)光源DirectionalLight平行光源SpotLight錐光源
[例4-7]光照與陰影參見(jiàn)教材P67。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.4VRML的場(chǎng)景效果4.4.3 光照效果PointLight{onTURE#exposedFieldSFBoollocation0.00.00.0#exposedFieldSFVec3fradius100.0#exposedFieldSFFloatintensity1.0#exposedFieldSFFloatambientIntensity0.0#exposedFieldSFFloatcolor1.01.01.0#exposedFieldSFColorattenuation1.00.00.0#exposedFieldSFVec3f}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.4VRML的場(chǎng)景效果4.4.3 光照效果DirectionalLight{onTURE#exposedFieldSFBooldirection0.00.0-1.0#exposedFieldSFVec3fintensity1.0#exposedFieldSFFloatcolor1.01.01.0#exposedFieldSFColor}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.4VRML的場(chǎng)景效果4.4.3 光照效果SpotLight{onTURE#exposedFieldSFBooldirection0.00.0-1.0#exposedFieldSFVec3flocation0.00.00.0#exposedFieldSFVec3fradius100.0#exposedFieldSFFloatintensity1.0#exposedFieldSFFloatambientIntensity0.0#exposedFieldSFFloatcolor1.01.01.0#exposedFieldSFColorattenuation1.00.00.0#exposedFieldSFVec3fbeamWidth1.570796#exposedFieldSFFloatcutOffAngle0.785398#exposedFieldSFFloat}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.4VRML的場(chǎng)景效果4.4.4 其它效果Background(背景)節(jié)點(diǎn):可以控制VRML世界中天空和地面的顏色,指定一組全景圖放置在VRML世界的上方、下方或四周。Viewpoint(視點(diǎn))節(jié)點(diǎn):用來(lái)設(shè)置瀏覽者在VRML世界中的觀察位置、空間朝向和視野范圍等。NavigationInfo(導(dǎo)航)節(jié)點(diǎn),用來(lái)提供瀏覽者的替身信息以及該替身如何在VRML世界中進(jìn)行導(dǎo)航。
[例4-8]宇宙飛行參見(jiàn)教材P70。第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.4VRML的場(chǎng)景效果4.4.4 其它效果Background{skyColor[0.00.00.0]#exposedFieldMFColorskyAngle[]#exposedFieldMFFloatgroundColor[0.00.00.0]#exposedFieldMFColorgroundAngle[]#exposedFieldMFFloatfrontUrl““#exposedFieldMFStringbackUrl““#exposedFieldMFStringleftUrl““#exposedFieldMFStringrightUrl““#exposedFieldMFStringtopUrl““#exposedFieldMFStringbottomUrl““#exposedFieldMFString……}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.4VRML的場(chǎng)景效果4.4.4 其它效果Viewpoint{position0.00.010.0#exposedFieldSFVec3forientation0.00.01.00.0#exposedFieldSFRotationfieldOfView0.785398#exposedFieldSFFloatdescription““#SFStringjumpTURE#eventInSFBool……}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.4VRML的場(chǎng)景效果4.4.4 其它效果Fog{color1.01.01.0#exposedFieldSFColorfogType“LINEAR”#exposedFieldSFStringvisibilityRange0.0#exposedFieldSFFloat……}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.4VRML的場(chǎng)景效果4.4.4 其它效果NavigationInfo{headLightTRUE#exposedFieldSFBooltype[“WALK””ANY”]#exposedFieldMFStringspeed1.0#exposedFieldSFFloatvisibilityLimit0.0#exposedFieldSFFloatavatarSize[0.251.60.75]#exposedFieldMFFloat……}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.5VRML的動(dòng)態(tài)交互4.5.1 動(dòng)畫(huà)設(shè)計(jì)4.5.2 傳感器交互4.5.3 腳本設(shè)計(jì)第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.5VRML的動(dòng)態(tài)交互4.5.1 動(dòng)畫(huà)設(shè)計(jì)在VRML中,通過(guò)時(shí)間傳感器和插補(bǔ)器節(jié)點(diǎn),即可實(shí)現(xiàn)最常用的線性關(guān)鍵幀動(dòng)畫(huà)。VRML提供了諸如PositionInterpolator(位置)、OrientationInterpolator(朝向旋轉(zhuǎn))、ColorInterpolator(顏色)、ScalarInterpolator(標(biāo)量)等多個(gè)插補(bǔ)器節(jié)點(diǎn)來(lái)控制動(dòng)畫(huà)。TimeSensor(時(shí)間傳感器)節(jié)點(diǎn)的作用是創(chuàng)建一個(gè)虛擬時(shí)鐘。向各插補(bǔ)器節(jié)點(diǎn)輸出時(shí)間事件,進(jìn)行時(shí)間控制,以使插補(bǔ)器節(jié)點(diǎn)產(chǎn)生隨時(shí)間變化的動(dòng)畫(huà)效果。
第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.5VRML的動(dòng)態(tài)交互4.5.1 動(dòng)畫(huà)設(shè)計(jì)TimeSensor{enableTRUE#exposedFieldSFBoolloopFALSE#exposedFieldSFBoolcycleInterval1.0#exposedFieldSFTimestartTime0#exposedFieldSFTimestopTime0#exposedFieldSFTimeisActive#eventOutSFBooltime#eventOutSFTimecycleTime#eventOutSFTimefraction_changed#eventOutSFFloat}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.5VRML的動(dòng)態(tài)交互4.5.1 動(dòng)畫(huà)設(shè)計(jì)PositionInterpolator{key[]#exposedFieldMFFloatkeyValue[]#exposedFieldMFVec3fset_fraction#eventInSFFloatvalue_changed#eventOutSFVec3f}第4章虛擬現(xiàn)實(shí)建模語(yǔ)言VRML744.5VRML的動(dòng)態(tài)交互4.5.1 動(dòng)畫(huà)設(shè)計(jì)ColorInterpolator{key[]#exposedFieldMFFloatkeyValue[]#exposedFieldMFColorset_fraction
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030全球開(kāi)放式框架工業(yè)顯示器行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025年全球及中國(guó)平盤(pán)電滑環(huán)行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 2025-2030全球TGV基板行業(yè)調(diào)研及趨勢(shì)分析報(bào)告
- 2025年全球及中國(guó)完全生物基聚酰胺行業(yè)頭部企業(yè)市場(chǎng)占有率及排名調(diào)研報(bào)告
- 幼兒繪本講述與演繹幼兒繪本講述的停連運(yùn)用技巧講解
- 2025景區(qū)商場(chǎng)蛇年新春嘉年華活動(dòng)策劃方案
- 2025綠洲集團(tuán)工程合同管理規(guī)范
- 沙石采購(gòu)合同范本工程合同
- 2025【合同范本】打印機(jī)耗材長(zhǎng)期供貨合同
- 防雷技術(shù)服務(wù)合同
- 第2課+古代希臘羅馬(教學(xué)設(shè)計(jì))-【中職專(zhuān)用】《世界歷史》(高教版2023基礎(chǔ)模塊)
- 中儲(chǔ)糧蘭州公司考試筆試題庫(kù)
- 焊接機(jī)器人在汽車(chē)制造中應(yīng)用案例分析報(bào)告
- 重建成長(zhǎng)型思維課件
- 電捕焦油器火災(zāi)爆炸事故分析
- 質(zhì)量問(wèn)題分析及措施報(bào)告
- 汽修廠安全風(fēng)險(xiǎn)分級(jí)管控清單
- 現(xiàn)代通信原理與技術(shù)(第五版)PPT全套完整教學(xué)課件
- 病例展示(皮膚科)
- DB31T 685-2019 養(yǎng)老機(jī)構(gòu)設(shè)施與服務(wù)要求
- 燕子山風(fēng)電場(chǎng)項(xiàng)目安全預(yù)評(píng)價(jià)報(bào)告
評(píng)論
0/150
提交評(píng)論