Netscape VRML Plugins; Comparative Test

June 1996

The reason I did this comparison was to check out the existing VRML plugins for Netscape, compare them on a variety of worlds that I've created (ranging from 30Kb to 2.9MB uncompressed) and feedback the results to the VRML community as well as the browser/plugin authors. Since I don't work for any of the companies mentioned I believe this report is pretty accurate and unbiased. Extensive VRML Test suites are available by Mitra, Chaco, Laurel and Haines all doing an excellent job at testing browsers without making any attempt at ranking the various browsers (and rightly so, since a couple of them are browser authors!). The yardstick for the image quality tests is Webspace1.1 running on SGIs (an Indigo2 Max Impact and an Indy)- after all that's where all my worlds were assembled, tested and configured.

All tests were carried out on two Pentium 100 PCs both running Windows NT (one 3.51 the other 4.0 beta). Hard disk sizes are probably irrelevant for such a test, there was enough swap space on both machines (approx. 400MB). The computers had 64 and 96MB Ram and a Viper PCI 2mbVRam and a Matrox Millennium 4mbWRam card respectively. Both computers were running Netscape 3.0 beta4 with the latest display drivers et al. Almost all tests were carried twice; in both 8bit and 24bit mode. The size of the Netscape window was approximately 640X480 pixels in all tests. As a final note, all the worlds that I used for the testing are VRML1.0 compliant and passed the vrmllint check with no errors.

The VRML plugins tested

(in alphabetical order)

The test files/results

VrmlLogo

is a simple logo that has a bit of everything except textures. WWWInline, IndexFaceSet, IndexPointSet, lights, cameras, primitives, transparency, etc. Only 24+16Kbyte. This was the model that most browsers rendered very successfully; not surprising since it is extremely simple. Cosmo Player was the best (by a very small margin) followed by Live3D that showed the IndexLineSets as lines with thickness (according to Paper this is a problem with the rendering engine used). V-Realm did an excellent job at rendering but was the slowest of all. VR-Scout doesn't seem to support IndexLineSets but apart from that was very good and smooth. Topper was really fast but with two problems; lights weren't quite right and most important the IndexLineSet was represented as fairly thick cylinders and not lines!

GVD Logo

is a not so simple logo, with textures, transparency, simple materials and IndexFaceSets. Size is 310Kbytes plus 30kbytes for the textures or 50Kbytes compressed. This model was done in 3DStudio with lights, textures and materials applied using WebspaceAuthor on an SGI. Here V-Realm was the winner, with excellent rendering, perfect textures and correct lighting-albeit a bit slow. VR-Scout was a close second with very good overall performance. Topper and Live3D were close third with the former having problems with the texture orientation and lighting whereas the latter bleached the textures to almost a grayscale! Cosmo's performance was surprisingly poor with no textures (?) wrong colours and lights.

CH1_M

a chair I've designed with a human figure sitting. Uses CreaseAngle to create smooth shading on the figure's body and clothes while keeping the wooden elements with sharp edges. Only 110Kbytes. The combination of CreaseAngle with sharp planes seems to have created most problems. VR-Scout was the best with excellent quality with V-Realm a close second; the only complain being again speed. Cosmo was third with good allround quality. Topper was quite fast but the rendering was a bit rough. Live3D was dissapointing again with colour and lighting problems.

Pulteney_DEF

A small part / test of the Bath City model. This is the famous Pulteney Bridge, complete with textures, LODs, TextureCoordinate2 nodes (targeting facades on the same texture strip). The latter is excellent (in theory at least) to reduce the network load by uploading one texture file that has all the building/shop facades stitched together. It did create serious problems though, since most browsers would resample the 2000x120pixel strip to 128X120 with extremely poor results. WRL + textures is 365+100Kbytes. The WRL is also available compressed (66Kbytes). Best overall performance was by VR-Scout only complain being the resizing of the texture. Live3D was second with again colour problems followed by V-Realm that had the best texture quality (definitely not resampled at 128X120). Topper doesn't seem to support TextureCoordinate2 nodes (well, no textures appeared) as did Cosmo. The latter crashed in 8bit mode and only loaded, with no textures, at 24bit mode.

10th_Membrane

An architectural competition entry modeled exclusively in 3DStudio, with textures. File size: 300Kbytes + 15Kbytes for textures (or 85Kbyte compressed). In this one I must have done something to the textures since no browser seemed to do a decent job. The best was again V-Realm with the sea texture fine (concrete and ground were quite bad). VR-Scout was second best with more problems on these two textures that now appear almost black. Topper did a good job showing the geometry right but failed on the textures whereas Cosmo did much better in 24bit mode compared to the very poor colours and lights at 8bit. Live3D was again very quick, smooth and with grayscaled textures.

TEE

Another architectural competition entry. Very big file (2.9MB uncompressed or 495Kbyte compressed) with no textures but many transparent windows. Mainly used to test whether the browsers can handle something really big. I cannot really name a winner since none of the browsers seem to manage much with this file... Live3D would read it show it and that's about it, Cosmo crashed with a syntax error, V-Realm rendered it (after a long time). Topper and VR-Scout wouldn't load it at all.

The results in 3D did cause serious problems since none of the plugins displayed it properly! Again it was a problem with the lights and colours; a few browsers didn't like the textures either. This was quite disappointing and shows that there is still much work to be done before we can safely assume that what we design and distribute in VRML will be what everyone else will see... Not to mention that this test only focused on PCs running Netscape, I'd be very interested to see a test of all VRML browsers/plugins across a variety of platforms.

Plugin Comments

Drawing some overall conclusions it seems that V-Realm is doing the best work at rendering a variety of worlds, the penalty being the speed (or rather lack of it). Very often it seems that feels better to use a faster and less accurate plugin that this extremely accurate and slow one. I was also confused with the navigation model they use making things difficult. VR-Scout did surprisingly well; adding a 20-30% headlight seemed to iron out most lighting problems faced, texturing was good (although rescaled) and I think it is the only browser that does dynamic LOD on primitives (spheres). My main complain from this browser is the lack of support for Viewpoints making navigation difficult at times. Cosmo did quite well, with very good transparencies, decent lighting model (not always) and serious problems on IndexFaceSets. Live3D has moreorless the same problems as Cosmo, but has a series of features that would be very much welcomed; dim/brighten lights, flat smooth shading, navigation without having to hold ALT, CTRL or SHIFT keys, etc. Finally Topper doesn't seem to consider scene lights at all (?) and instead use an ambient (?) per object. Rendering is marginally rougher than in the other plugins and there is no support for viewpoints.

General Comments

Overall, the plugins worked quite well, the main problem being the lack of graphics performance and the not so good/complete/accurate (?) colour and lighting models used. The handling of textures and especially the pixel limitation per texture file on some implementations caused serious problems. The browsers used a variety of rendering libraries Renderware, Reality Labs, Intel 3DR etc. without necessarily producing comparable results, even when using the same library. I didn't have the chance of testing a Pentium PC with a hardware accelerated graphics card (Glint based) but according to the specs it should make some of these plugins run at almost the speed of an SGI Indy.

There is no clear winner out of this and it was not my intention to. After all I should thank all the plugin writers for providing their work; without them VRML wouldn't exist anyway! I'd recommend trying all plugins if possible and settle for the few that are more satisfying. Don't forget that a plugin that shows some of my work successfully can be horrible on yours and vice versa.

Disclaimer: all plugins were betas (i.e. not officially released code) and therefore likely to change / improve soon. I'll try my best to keep this updated and add any other new plugins.

For any further info/comments contact V.Bourdakis@bath.ac.uk