VRML97 提示

利用本主题中的提示,将有助于您尽可能出色完成工作,并尽可能快地显示和移动。

几何体

使用小纹理贴图,并有节制地使用它们。为了获得较高的性能,应减少对象的多边形数量。对大多数计算机而言,一个完整的场景最多拥有 5000 至 10000个多边形是可管理的。细节级别辅助对象用于管理场景中对象的多边形数量。在将对象导出到 VRML97 之前,也可以使用 3ds Max 的优化修改器对其进行简化。

尽可能使用基本体。例如,只包含一个球体的场景导出到 VRML97 文件,文件大小约为 400 字节,但是如果应用了编辑网格修改器并移动球体上的一个顶点,则 VRML97 文件大小约为 7,400 字节。

使用“显示统计数据”跟踪场景中的面数。从标准的 HTML 页面调用 VRML97 .wrl 文件,然后使用嵌入命令将查看者约束到屏幕上的有限窗口中。这样不仅可以增加必须在每一帧上渲染的像素数量,而且可以使 VRML97 环境的响应速度更快。许多用户使用高分辨率(800x600 或更高),以使渲染和导航时像素的数量变大,而视频显示速度将降低。当浏览器尝试保持其实时渲染时,帧数可能下降,而导航场景将成为“块状”。使用嵌入命令可以避免出现这个问题,如 <embed SRC=myworld.wrl WIDTH=300 HEIGHT=200>

隐藏 3ds Max 中某对象上的面,然后导出该对象。隐藏的面显示为对象中的孔洞。当 VRML97 插件导出隐藏的对象时,并不导出隐藏的面。您知道的隐藏面在场景中永远不会出现,如位于曲面上的对象背面或对象底面。

使用实例可以减少拥有相同几何体的对象的文件大小。

使用镜像变换时,随后应立即使用“重置变换”工具。您也可以立即使用“法线修改器”,然后再使用“统一法线”。VRML97 不允许镜像变换(负值缩放)。“重置变换”工具修改实际网格对象中的数据以创建镜像效果。

当为 vrml97 建模时,不要更改单位。要以米为单位进行建模,应保持单位设置为默认值,并且将一个世界单位作为一米。

动画

当您使用变换动画和坐标插值动画时,要注意文件过大的情况。VRML97 插件导出变换动画(移动、旋转和缩放)和坐标插值动画。例如,您可以设置修改器的动画,如锥化和弯曲,也可以设置更改参数的动画,如增大或减小球体半径。

将使用“继承链接”功能的场景导出到 vrml97 时,子对象始终继承其父对象的变换。反向运动学可以正确导出到 VRML97,但是继承链接功能例外,该功能决定子对象是否继承父对象的变换。

应始终使用 TCB 控制器用于进行 vrbl 动画。这些控制器提供了精确的控制,并且可以生成尽可能最小的文件。其他种类的控制器(如默认 Bezier 控制器)也可以创建不需要执行的大型 VRML97 文件。

确保您的动画永远不会随时间的推移而更改面或顶点数。VRML97 不能随时间推移添加或删除面或顶点。坐标插补器只支持网格变形,而不会更改顶点数或面数。

若要触发未位于 3ds Max 链接层顶级对象上的动画,请使用“时间感应器”辅助对象。如果直接从“触动感应器”或“范围感应器”触发动画,而不使用“时间感应器”,则只能设置顶级对象的动画。通过“时间感应器”设置动画没有此限制。

如果设置基本体参数(如球体半径)的动画,并且需要使用坐标插补器导出的动画,则禁用“导出”对话框中的“生成基本体”切换。这只适用于长方体、球体、圆柱体和圆锥体基本体。

材质

您可以只导出标准和多维/子对象材质,也可只导出下列材质的组件:

确保所有大平面曲面具有足够多的顶点,从场景中所有合适的有利位置上都可以看到一些顶点。一些浏览器不能显示对象上的纹理,对象上的所有顶点都在当前视口的外部。

如果在场景中拥有几个灯光,则减少场景中所有灯光上的默认倍增值。灯光可以使场景过于饱和,并使所有几何体褪为白色。应始终至少将一个摄影机和一个灯光添加到要导出到 VRML97 的场景中。

辅助对象

将 VRML 辅助对象插入到顶视口的场景中。可以将 VRML 辅助对象插入到任何视图中,但是如果将其插入到顶视口中,则它们将在前视口中显示正确的方向。