[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [www-vrml] Why you shouldn't convert VRML97 to X3D
Goncalo's correct about all three cases. However, I wouldn't paint this as a
disaster.
An additional conversion rule could easily cover Inlines, i.e. change the
URLs that point to .wrl to point to valid X3D files. Naturally, those
Inlined files would have to be converted too.
For Switch and LOD, the field renames are fairly easy to do. A converter
*may* be able to get away with global search/replace on choice and level
(though it's probably a little more involved than that).
Scripts are the real thorny technical problem... however most ECMAScript
scripts will "just work" by accident.
In any case, this is a job for a utility if you're dealing with complex
files. The simple cookbook Leonard recommends can get a person started with
their old VRML files and just hand-editing. But it's not a reliable
production solution and doesn't cover the hard corners that a serious
application might hit.
In addition, I strongly disagree with the following
> The bottom line is: do not convert from VRML97 to X3D.
Have you read that other thread? There's like a million VRML files out
there. Assuming that only 10% are good (:-o) that's still a lot of content
that people don't want to leave behind when moving to X3D. And there's
really no good reason to. As discussed, most of the conversion can be
automated. And what can't is program code-- which often breaks when you
convert up anyway.
So, we're not in bad shape here.
Tony
> -----Original Message-----
> From: owner-www-vrml@web3d.org [mailto:owner-www-vrml@web3d.org] On Behalf
> Of c3099023@tees.ac.uk
> Sent: Sunday, September 05, 2004 6:02 AM
> To: www-vrml@web3d.org
> Subject: [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
-------------------------------------------------------------------------
for list subscription/unscrubscription,
go to http://www.web3d.org/cgi-bin/public_list_signup/lwgate/listsavail.html