Convert VRML97 To X3D

From Web3D.org
Revision as of 07:47, 31 May 2007 by Rusmufti (Talk | contribs) (available VRML97 to VRML Classic Encoding X3D converters)

Jump to: navigation, search

Convert VRML97 To X3D

This article documents how to convert a VRML97 file to a VRML Classic Encoding X3D file.

Change the header from #VRML V2.0 utf8 to:

#X3D V3.0 utf8

Add a profile statement:

PROFILE Immersive

Field names

This section details how to convert some field names

Change the fieldnames of some nodes

In node "LOD": change from "range" to "children" In node "Switch": change from "choice" to "children"

Scripting

This section details how to convert scripting.

Change field declarations from eventIn, field, exposedField, eventOut to:

inputOnly, initializeOnly, inputOutput, outputOnly

Ecmascript

This section shows details on converting vrmlscript/javascript scripts to ecmascript.

Change vrmlscript/javascript scripts to ecmascript, url "javascript:" becomes:

url "ecmascript:"

Change methods to properties Functions like Browser.getCurrentFrameRate() are now ecmascript properties. So they become Browser.currentFrameRate

Other functions that have changed are:

  1. getName() became name
  2. getVersion() became version
  3. getCurrentSpeed() became currentSpeed
  4. getCurrentFrameRate() became currentFrameRate
  5. createVrmlFromString() became createX3DFromString
  6. createVrmlFromURL() became createX3DFromURL
  7. setDescription() became description

Some functions have moved from the Browser object to the X3DExecutionContext object:

  1. addRoute() is now Browser.currentScene.addRoute()
  2. removeRoute() is now Browser.currentScene.removeRoute()
  3. createVrmlFromString is now createX3DFromString
  4. getWorldURL() became worldURL


Java

Java scripting will need to be converted to the new SAI interfaces. A more detailed writeup of this process will follow.

available VRML97 to VRML Classic Encoding X3D converters

There are programs to help converting from a VRML97 file (infile.wrl) to a VRML Classic Encoding X3D file (outfile.x3dv):

white_dune(since version 0.29beta600) use one the commandline: "dune -x3dv infile.wrl > outfile.x3dv"