虚拟现实语言简称VRML,是新近产生的一种WEB语言,它是一种模拟语言,用来描述一个对象是如何呈现在WEB上的,和HTML一样,VRML也是可以由游览器解释的描述语言,只不过VRML不是描述成一个Page的格式,而是描述成3D环境和目标的布局。[1]

中文名

虚拟现实语言

外文名

virtual reality modeling language

简    称

VRML类    型

模拟语言

定    义

描述一个对象是如何呈现在WEB上

应用学科

计算机原理

虚拟现实语言基本结构

编辑

语音

VRML的文件特征是由VRML规范决定的,这种规范的最新版本为VRML2.0(VRML97)。VRML文件主要包括文件头、造型(定义节点和引用节点)、脚本和路由等部分,但不是每一个VRML文件都必须包括这些部分,只有文件头是每个VRML文件必须的部分。

虚拟现实语言VRML文件头

位于文件的第一行,且为:

#VRML V2.0 uft8

说明该文件为符合VRML2.0规范和UFT一8字符集的VRML文件。

虚拟现实语言VRML的节点

(1)节点的基本组成:节点是VRML的最基本组成部分,VRML的主要内容是节点的定义和节点的层层嵌套。VRMI。2.0的节点可分为九类:GroupingNodes、Sensors、Appearance、SpecialGroups、Geometry、Interpolators、CommonNodes、Geometryproperties、Bind—ableNo—des。

节点的基本组成如下:

节点的类型名{

域1域1的值

域2域2的值

....

}

节点中域有以下的特点:①无序性。即各域之间不分先后顺序。②可选性。即各个域都有自己的省缺值。

此外,域值是有类型的。在VRML中域值的类型包括SFFBool、SFFloat/MF—Float、SFColor/MFColor、SFRotation/MFRotation、SFString/MFString、SFVec2f/ MFVec2f、SFVec3f/MFVec3f、SFInt32/MFInt32、SFImage、SFTime、SFNode/MFNode。其中以SF开头的是单值类型,而以MF开头的是多值类型。

(2)节点的定义和引用:在VRML中可以为一个节点定义一个名称,然后在该文件的后续部分可以多次引用。这对需要创造多个造型的VRML特别有用。被定义的节点为原始节点,节点的域在原始节点中应已设定,在引用中这些域值不能修改。

虚拟现实语言路由

路由(Route)的作用是将多个不同的节点绑定在一起,使场景具有动感和交互性。大多数的节点具有输出接口EnentOut和输入接口EnentIn。且一些节点通常具有多个不同的输入和输出接口。EnentOut和EnentIn也具有一定的数据类型。

路由绑定两个节点后,被绑定的两个节点一直处于休眠状态,直到被触发时事件可以从一个节点传递给另外一个节点。通过多个节点的绑定来创造复杂的路线,以便完成场景中更为复杂的交互。

另外,VRML文件中包含有注释行,它是以#开头的语句。VRML浏览器会将注释行和空行一起忽略掉。[2]

虚拟现实语言VRML的基本功能

编辑

语音

VRML的基本功能主要是通过节点来实现的,这些功能节点如下。

(1)基本几何造型和外观控制节点:在VRML中提供的基本几何造型有长方形、圆柱体、圆锥体和球体,这些几何造型的外观通过专门的节点Appearance来控制,包括颜色和纹理等。几何造型节点和外观节点组成控制节点(Shape节点)。可见由Shape节点就可以创建出虚拟世界中的单个几何造型,然后通过Group节点就可以将单个造型节点分组并结合在一起,这样可以将这些分组节点当作一个整体来进行操作。

(2)文本造型节点:通过Text节点指定的Shape节点的Geometry域,就可以创建出相应的三维文本造型。

(3)空间定位旋转和缩放节点:在VRML中通过坐标系的平移和旋转可以创建不同位上和方向上的空间坐标系.然后在新的坐标系中创建空间造型,这样就完成了对不同位上和方向上的几何造型的创建。这些功能由Transform节点来完成。

(4)空间背景节点:现实世界的空间会由于云等原因的影响而显示出不同的特点,在VRML中是通过Background节点来指定所需空间的背景的。

(5)大气效果节点:在VRML中通过Fog节点可以创造出现实世界中空间雾的颜色和浓淡效果。

(6)声音节点:在虚拟现实世界中.音乐分为背景音乐和动作音乐。背景音乐为环境音乐,动作音乐是伴随着各种动作而发出的声音。VRML通过AudioClip节点和Sound节点将声音文件MIDI和MAV引入虚拟世界中。

(7)光源节点和光照效果:现实世界中存在三种类型的光源(点光源、平行光源和聚光光源),在VRML中可以通过PoimLight节点、DirectionalLight节点和SpotLight节点及其域值的设定分别加以实现。

(8)空间视点控制和浏览者控制节点:浏览者的空间视点和浏览者本身的控制是通过Viewpoint节点和NavigationInfo节点来实现的。Viewpoint节点包括视点的空间位置、空间朝向和视野范围等;NavigationInfo节点包含了浏览者在空间移动的各种参数。

(9)锚节点:在浏览器中Anchor编组节点所创建的各种窗口,就可以进入到相应的URL地址上打开新的网页。

(10)文件内联节点:在节点内可以嵌入其他的VRML文件。

(11)节点控制节点:在VRML中通过Group节点将一组相关的节点组合在一起,形成某个特定的空间场景,以便对其进行整体操作。此外.还有完成转换编组的Switch节点和完成布告牌编组的Billboard节点。[2]

参考资料

1.

许榕生 刘宝旭 刘清泉,电子商务实用指南,机械工业出版社,1999年05月第1版,第103页

2.

田宜平,翁正平,何珍文,张志庭主编,地学三维可视化与过程模拟=3D VISUALIZATION AND PROCESS SIMULATION FOR GEOSCIENCES,中国地质大学出版社,2015.05,242-243

vr计算机语言,虚拟现实语言相关推荐

  1. VR教育虚拟现实技术应用的价值

    传统教学对于现在的学生来说有很多弊端,经常有家长和老师都反应,某个同学上课开小差,甚至直接逃课--这些都是厌学的症状.现代技术发展的今天,电子科技已经蔓延到千家万户,对于现在学生来说,传统的粉笔黑板教 ...

  2. HTC推出了VIVE Comos 全新 VR(虚拟现实)系列产品

    据 The Verge 报道,近日,HTC 推出了 VIVE Comos 全新 VR(虚拟现实)系列产品.包括 Cosmos 精英套装.VIVE Cosmos XR 版.Cosmos Play 基础版 ...

  3. 解构VR:虚拟现实技术如何在情感与道德上影响社会?

    全文共4383字,预计学习时长11分钟 图源:unsplash 作为虚拟现实技术的设计师和工程师,我们必须意识到,随着VR技术的发展,用户遭受心理创伤的风险在稳步增加.本文将从哲学.技术.伦理以及认知 ...

  4. 数学模型转化为计算机语言,程序设计语言类课程教学选题方法探讨

    <程序设计语言类课程教学选题方法探讨>由会员分享,可在线阅读,更多相关<程序设计语言类课程教学选题方法探讨(6页珍藏版)>请在人人文库网上搜索. 1.程序设计语言类课程教学选题 ...

  5. 红透半边天的VR(虚拟现实)产业

    目前在做一些与AR与VR相关的工作,特此把一些个人总结的普及性概念与各位朋友共享. 一: 什么是虚拟现实(VR)技术? 虚拟现实技术是一种可以创建和体验虚拟世界的计算机仿真系统它利用计算机生成一种模拟 ...

  6. 【VR】虚拟现实行业初探

    仅以此系列文章献给那些想了解虚拟现实(VR, Virtual Reality)的朋友,专业人士及行业人士慎入. "虚拟现实是利用电脑模拟产生一个三维空间的虚拟世界, 提供使用者关于视觉.听觉 ...

  7. 如何在VR(虚拟现实)中制作物体或物体?

    If you've enjoyed gaming using an Oculus Rift S or Sony PlayStation headset, then you've had a hands ...

  8. 【VR】虚拟现实相关硬件设备

    虚拟现实(即VR)技术往往要结合各种外在硬件设备(简称外设)来实现. 其相关的硬件设备种类繁多,百度百科上已给出了较完整的陈述. (网址:http://baike.baidu.com/link?url ...

  9. vfp语言第 代计算机语言,VFP语言属于第()代计算机语言。A、一B、二C、三D、四...

    语言属于第语言[多选题]722 型可见分光光度计与 754 型紫外分光光度计技术参数相同的有( ). 参考答案如下 代计[填空题]已知数列 是首项为3,公比为 的等比数列,记 的前n项和为 ,求[单选 ...

最新文章

  1. 隐藏基于对话框的MFC应用程序窗口的方法
  2. python urllib2及beautifulsoup学习
  3. C++ : KMP 字符串匹配算法
  4. linux基于域的虚拟目录,RHELAS4.0 apache配置之我的小结(虚拟目录,虚拟主机)
  5. Python实用技法第26篇:定义实现最短匹配的正则表达式
  6. C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(十七) 完美精灵之八面玲珑(WPF Only)①...
  7. 第七篇,STM32串口通信编程
  8. 数据分析师岗位需求数据分析
  9. Android设置拍照或者上传本地图片
  10. 牛客网 月出皎兮,佼人僚兮。 树上启发式合并
  11. Android之传感器(三)方向传感器
  12. 员工培训案例分析答案_?消防经典案例试题答案:安全管理案例分析
  13. 路由器角色 ABR ASBR
  14. 基于机器视觉的移动消防机器人(二)--详细设计
  15. Linux内核IP Queue机制的分析(一)
  16. 5G无线关键技术 — 非正交多址接入技术
  17. java图片与文字拼接
  18. 设计原则与思想:设计原则12讲
  19. 微信老客户的维护方法
  20. matlab版开源GNSS_SDR-masterGPS软件接收机代码解读

热门文章

  1. JBOD里都有什么?
  2. 2004年11月11日
  3. scrollTo()
  4. 最详细的CSS字体样式总结(font-family、font-size、font-weight、font-style等)
  5. 【算法导论】笔记-第一章 算法基础
  6. 一个程序员对另一个程序员的忠告
  7. python_suit
  8. 求助:有道题不会写;
  9. python快递费用计算公式_python2.4项目:快递计价程序
  10. Qt商业版和开源版下载地址!!!!!!