VRML
编辑VRML (VRML) 是一种描述 3D 场景、它们的几何形状、照明、动画和交互选项的描述语言,包括放置在虚拟环境中的噪声源。
概览
编辑VRML 最初是作为一种人类可读的 Web 3D 标准而开发的,并且是万维网联盟推荐用于此用途的 X3D 标准的前身。
VRML 表示由查看者的计算机实时生成。 这意味着计算机会根据现有的几何数据以及“访客”的行为和动作不断地重新计算每个单独的图像。 由于这个原因(自 2006 年起,在不使用超级计算机技术的情况下)具有需要大量计算的光线跟踪过程的照片级逼真表示,“真实”反射和阴影被排除在外。 即使使用预定义的观看者位置(英语视点),在这些点之间切换和跟踪镜头时,也不会播放电影序列中的完成图像。 复杂的 VRML 场景过去对硬件的要求很高。 运动的速度和流畅度取决于处理器,最重要的是,取决于显示计算机的显卡。
VRML 文件可以通过文件扩展名“.wrl”(世界)识别,它们以纯文本(ASCII 或 UTF-8)编写,也可以在简单的文本编辑器中创建。 大多数 3D 建模工具都支持 VRML 文件的导入和导出,这也将文件格式确立为 3D 模型的交换格式。 您还可以找到具有 .wrl 文件扩展名的 gzip 压缩 VRML 文件,尽管它们实际上旨在具有 .wrz 文件扩展名。 此外,VRML 文件被用作彩色 3D 打印的基础,因为用于 3D 打印的标准 STL 格式无法传输颜色信息。
节点类型
编辑由于 VRML 场景由多个节点组成,以下是 VRML 中的一些重要节点类型:
- 长方体、圆柱体、圆锥体和球体等几何基元都有自己的节点类型。
- 复杂的图形对象基于一系列点及其描述的表面 (IndexedFaceSet)、线 (IndexedLineSet) 或点 (PointSet)。
- 可以使用 Transform 节点对主体进行分层分组。 缩放、旋转或平移等变换操作可应用于该节点下的所有节点。 VRML 文件中的树结构使得创建正向运动学变得容易。 当手臂移动时,显示的手指就会移动。
- 可以将材料属性分配给几何体。 借助 PNG 图像也可以实现透明纹理。
- 然后,光源使用照明模型(通常是 Gouraud 明暗处理)为对象提供适当的明暗处理。
- 传感器对用户操作做出反应,时间传感器用于动画。
- 然后内插器可以,例如 B. 将旋转转换为任何颜色变化或物体位置随时间的变化
- 脚本节点是通过连接(路由)激活的,通过从对象定义的事件退出,并启动 Java 脚本或 Java 程序。 这可以执行任何计算并通过与对象输入的额外连接来传递结果。
- USE 命令用于重用已使用“DEF”定义的脚本节点。
- PROTO 节点比 USE 命令灵活得多。
- 通过所谓的锚点和内联,您可以单击对象转到另一个世界或将其他 VRML 对象集成到您自己的世界中。 这有助于保持 VRML 文本清晰。
- LOD(细节级别)允许在用户距离较远时简化显示以提高性能。
- 广告牌就像始终面向用户的黑板。
- 其他节点描述了用户的步行速度和视线水平以及世界的背景颜色。
正如已经提到的脚本节点,VRML 查看器具有集成的面向事件的模拟,每个对象都可以发出一个事件。 这些是单个值或整个值列表。 这些值可以可以是时间、数字、字符串、颜色、矢量、图像或整个节点。 然后系统会进一步处理这些数据,甚至可以模拟简单的物理过程。
VRML 浏览器的碰撞检测是标准的。 需要碰撞检测以避免穿墙。 然而,确保一个人不离开地面的程序不太明确。
Java 编程语言可根据 ISO/IEC 14772-2 通过 EAI 接口(外部创作接口)使用,以通过浏览器或其他方式对 VRML 场景进行外部控制。 与任何文本文件一样,VRML 也可以由服务器使用服务器端脚本语言生成。 除了用于浏览器之外,VRML 还用于虚拟现实环境。
内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/371963/