[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[www-vrml] Why you shouldn't convert VRML97 to X3D



Consider the following

#VRML V2.0 utf8

Inline
{
   url "some.wrl"
}

Assume that "some.wrl" points to a well-formed portable world. A fully
compliant VRML97 browser will render it correctly.

Use the official recipe for conversion that is being advertised
and you get

#X3D V3.0 utf8

Inline
{
   url "some.wrl"
}

You try to run it on a X3D browser fully compliant with the Full profile
and you get nothing. Why? Section 9.4.2 of the spec says this world may
produce undefined behaviour.

Another example:

...
Switch
{
    choice [ ... ]
}

Convert it with the official recipe and you get a syntax error. Choice is
not a field of Switch in X3D.

Note that I'm not even touching Script nodes. That's just too much fun for
a single email. SMTP won't handle it.

The official recipe is nothing but a nasty, ugly, non-portable hack.

The bottom line is: do not convert from VRML97 to X3D. If you must make
sure you're not falling in dark corners of X3D spec. X3D is *not*
backwards
compatible with VRML. Only use X3D for new content. If you rely on a lot
of scripting for which you only have bytecode, then stick with VRML.
Nothing wrong with that.

Cheers,

Goncalo

-------------------------------------------------------------------------
for list subscription/unscrubscription,
go to http://www.web3d.org/cgi-bin/public_list_signup/lwgate/listsavail.html