VRML的基本知识
- 格式:ppt
- 大小:601.50 KB
- 文档页数:57
第五章VRML基本知识主要内容⏹5.1 VRML概述⏹5.2 VRML场景的编辑与浏览⏹5.3 VRML文件的语法与结构⏹什么是VRML?◆“Virtual Reality Modeling Language”缩写--“虚拟现实造型语言”◆一种三维造型和渲染得图形描述性语言,把“虚拟现实”看作一个“场景”,而场景中的一切都看作“对象”(即“节点”),对每一个对象的描述就够成了wrl文件(wrl是VRML文件的扩展名)。
◆目的主要是为了在网页中实现三维动画效果以及基于三维对象的用户交互。
同HTML语言一样,也是一种ASCⅡ的描述语言,且都支持超链接,只是HTML不支持三维图像和立体声文本的显示。
◆VRML的出现使得虚拟现实象多媒体和因特网一样逐渐走进我们的生活。
⏹VRML特点:◆语法简单,易懂,编辑操作方便,学习相对容易。
◆具有创建三维造型与场景,并可以很好实现的交互效果。
可以嵌入Java、JavaScript等程序,使其表现能力得到极大的扩充。
它能够实现人机交互,形成更为逼真的虚拟环境。
◆具有强大的网络功能,文件容量小,适宜网络传输,方便地创建立体网页与网站。
◆具有多媒体功能,在其程序中可方便地加入声音、图像、动画等多媒体效果。
◆具有人工智能功能,在VRML中具有感知功能,可以利用各种传感器节点来实现用户与虚拟场景之间的智能交互。
◆在当前各种浏览器中还不能直接运行,必须安装VRML的相关插⏹VRML的运行环境:VRML对硬件与软件的环境要求都较低,一般配置的计算机都能运行,但硬件配置较高时,运行速度较快。
一般推荐配置为: 硬件环境:建议采用Pentium4以上的计算机,主频2G以上、内存128M以上、显存64M以上、硬盘10G以上。
软件环境:操作系统可采用Windows 98/2000/XP/2003/win7等,但要求安装VRML的相关浏览插件。
网络环境:浏览VRML场景时可采用拨号、宽带等网络接入方式,网络浏览器可采用Windows操作系统自带的IE游览器或Nets cape浏览器。
VRML简介和基础语法--------------------------------------------------------------------------------一、VRML是什么VRML是虚拟现实造型语言(Virtual Reality Modeling Language) 的简称。
二、VRML文件的组成部分和文件头VRML文本的文件名后缀是 .wrl,这是一种ASCII文本文件。
VRML文件可以包括四个主要成分:VRML文件头原型造型和脚本路由每个文件都有一个文件头,VRML1.0的文件头和2.0的文件头是不一样的。
VRML 1.0的文件头是#VRML V1.0 asciiVRML 2.0的文件头是,我们这里只讨论VRML 2.0#VRML V2.0 utf8 在VRML文件中可以加入注解,只要在注解前加入#即可。
下面是一个简单的VRML文件,它在三维空间中建立一个立方体。
#VRML V2.0 utf8Shape {appearance Appearance { }material Material { }}geometry Box { }}三、几个基本造型所有VRML造型都使用Shape节点创建。
Shape节点的语法是Shape {appearance NULLgeometry NULL}其中appearance域的值定义一个节点,该节点定义造型的外观,包括颜色和表面纹理等。
当它为NULL值时建立的造型是无纹理的白色有阴影物体。
它将在后面介绍。
geometry域的值定义一个节点,该节点定义造型的3D构造及几何结构。
典型的几何结构有Box,Cone,Cylinder和Sphere,它们都可以作为geometry的值。
Box节点的语法是Box {size 2.0 2.0 2.0 #长高宽(x y z 三个方向,注:2.0 2.0 2.0是缺省值,下同)}Cone节点的语法是Cone {bottomRadius 1.0 # 圆锥底部半径height 2.0 # 圆锥的高side TRUE # 是否创建圆锥的锥面bottom TRUE # 是否创建圆锥的底}Cylinder节点语法Cylinder {radius 1.0 # 园柱底的半径height 2.0 # 园柱高side TRUE # 是否创建园柱曲面top TRUE # 是否创建园柱顶bottom TRUE # 是否创建园柱底}Sphere节点语法Sphere {radius 1.0 # 球体的半径}以上语法中的值,是缺省值,下同。
1、VRML 发展历史网络三维技术的出现最早可追朔到VRML。
VRML(Virtual Reality Modeling Language)即虚拟现实建模语言。
VRML开始于20世纪90年代初期。
1994年3月在日内瓦召开的第一届WWW大会上,首次正式提出了VRML这个名字。
1994年10月在芝加哥召开的第二届WWW大会上公布了规范的VRML1.0草案。
1996年8月在新奥尔良召开的优秀3D图形技术会议-Siggraph\'96上公布通过了规范的VRML2.0第一版。
它在VRML1.0的基础上进行了很大的补充和完善。
它是以SGI公司的动态境界Moving Worlds提案为基础的。
1997年12月VRML作为国际标准正式发布,1998年1月正式获得国际标准化组织ISO批准简称VRML97。
VRML97只是在VRML2.0基础进行上进行了少量的修正。
VRML规范支持纹理映射、全景背景、雾、视频、音频、对象运动、和碰撞检测--一切用于建立虚拟世界的所具有的东西。
但是VRML并没有得到预期的推广运用,不过这不是VRML的错,要知道当时14.4k 的modems是普遍的。
VRML是几乎没有得到压缩的脚本代码,加上庞大的纹理贴图等数据,要在当时的互连网上传输简直是场噩梦。
1998年。
VRML组织把自己改名为Web3D组织,同时制订了一个新的标准,Extensible 3D (X3D),到了2000年春天,Web3D组织完成了VRML到X3D的转换。
X3D整合正在发展的XML、JAVA、流技术等先进技术,包括了更强大、更高效的3D计算能力、渲染质量和传输速度。
在此期间,一场Web3D格式的竞争正在进行着。
在去年SIGGRAPH上,展示了超过30种Web3D格式。
当然,只会有其中的一小部分能够脱颖而出最终生存下来。
在本文后半部分将会对一些有实力且目前已经取得了一定市场的格式作介绍。
最近一些厂商瞄准了一个市场,就是从二维图像生成三维物体。
虚拟现实技术――VRML篇一、VRML介绍1.什么是VRML?VRML是“Virtual Reality Modeling Language”的缩写形式,意思是“虚拟现实造型语言”。
第一代Web是以HTML为核心的二维浏览技术,受HTML语言的局限性,VRML 之前的网页只能是简单的平面结构,而且实现环境与参与者的动态交互是非常烦琐的。
第二代Web是以VRML为核心的三维浏览技术。
第二代Web把VRML与HTML、Java、媒体信息流等技术有机地结合起来,形成一种新的三维超媒体Web。
VRML是用来描述三维物体及其行为的,可以构建虚拟境界(Virtural World), 可以集成文本、图像、音响、MPEG影像等多种媒体类型,还可以内嵌用Java、ECMAScript等语言编写的程序代码。
以VRML为核心构建的虚拟世界中用户如身处真实世界,可以和虚拟物体交互,人们可以以习惯的自然方式访问各种场所,在虚拟社区中“直接”交谈和交往。
事实上,目前采用VRML技术取得成功的案例已经很多,例如探路者到达火星后的信息就是利用VRML在因特网上即时发布的,网络用户可以以三维方式随探路者探索火星。
2.VRML的工作原理VRML定义了一种把3D图形和多媒体集成在一起的文件格式。
从语法角度看,VRML文件是显式地定义和组织起来的3D多媒体对象集合;从语义角度看,VRML 文件描述的是基于时间的交互式3D多媒体信息的抽象功能行为。
VRML文件描述的基于时间的3D空间称为虚拟境界(Virtual World),简称境界,所包含的图形对象和听觉对象可通过多种机制动态修改。
VRML文件可以包含对其他标准格式文件的引用。
可以把JPEG、PNG和MPEG 文件用于对象纹理映射,把WAV和MIDI文件用于在境界中播放的声音。
另外,还可以引用包含Java或ECMAScript代码的文件,从而实现对象的编程行为。
VRML使用场景图(Scene Graph)数据结构来建立3D实境,VRML的场景图是一种代表所有3D世界静态特征的节点等级:几何关系、质材、纹理、几何转换、光线、视点以及嵌套结构。
VRML基础学习第二章基本形体的生成VRML程序的主体是节点语句,当然它还有文件头,一些复杂的程序还有路由语句。
程序的各个节点通过节点花括弧里的参数(参数有两类:字段及事件,但只有字段写在程序的节点语句中)定义了三维世界的形体及其属性。
动画及交互作用则是通过传感器节点、内插器节点、路由语句等完成的。
程序的主体是节点,因而VRML程序在需要某一个节点时,就写出这个节点名,节点名后花括弧里,则根据需要给出相应的参数名(字段名),参数名后面给出参数的具体数值。
大量阅读VRML程序后,我们就可以在程序中看到我们熟悉的节点名及参数名。
由于许多节点的参数给出的是另外一个节点,因而,在VRML程序中,我们可以看到程序中有较多的花括弧对,有时花括弧里还有花括弧,形成多重的花括弧。
一·VRML的坐标系统VRML定义有下列四个基本形体:Box、Sphere、Cylinder、Cone。
利用这些基本体,我们可以编写最简单的VRML程序,例如下面的程序只有两行语句:EX2_01:#VRML V2.0 utf8Shape {geometry Box{}}这是一个显示立方体的程序,如果我们将Box替换成Cylinder 、Sphere、Cone,就可以分别得到圆柱、球、圆锥。
我们可以用任何的文本编辑器编辑上面的程序,如利用Window95的记事本,DOS的EDIT。
要注意,第一行的第一列必须是#,不能有空格。
程序在存盘时,文件的扩展名必须为wrl(world的缩写)。
VRML文件显示的是三维空间的物体,上例生成的物体放置在一个符合右手螺旋法则的三维坐标系中,可以将这个坐标系看成是程序的总体的坐标系,国际标准规定:物体从+Z轴方向投影在一个+X轴向右、+Y轴向上的二维坐标系统中,+Z轴朝外,人的眼睛即观察点的坐标为(0 0 10),人的眼睛朝原点看去,这是缺省时的观察位置及观察方向,见后面BOX节点给出的示意图。
一些VRML程序中的Transform、Group节点可以使多个物体组成一个节点组,节点组可以放置在空间的任意地方,也可以在程序中移动或旋转节点组的坐标,一个大节点组里可以有小节点组,小节点组里可以有小小节点组,每个节点组拥有一个坐标系,称为这个组的局部坐标系。