Tutorial Home / Plan / Understand the Features & Limitations of the Technology

return to Plan


Overview

If you haven't already done so, read the Introduction to VRML to gain some insight into its feature set.

Understanding the features and limitations of a new Synthetic Environment technology is often a case of trial and error. It is only with practice and experience that you become aware of all the possibilities and restrictions that are placed on you as the author.

back to top | return to Plan


General Limits

Polygon Count
The polygon count is the total number of polygons (usually triangles) in an object or scene. The more triangles on screen at any one time the more calculations the computer has to perform to display them. Computers with faster CPUs, video cards and more RAM are better able to handle a large number of calculations.

Performance of Synthetic Environments is measured in frames per second (fps). Real-time 3D requires a sustained frame rate of at least 10fps but smooth movement requires 24fps or higher. The goal is the develop Synthetic Environments which perform as fast as possible on your target platform. The best way to increase performance is to limit the total number of polygons. See Polygon reduction for further details.

Textures
Texture quantity, size, and colour depth also affect performance. Some video cards can't display large textures or high colour textures as they don't have enough video RAM to store them.

Also, Synthetic Environments are often limited to only one texture on each object ie. there is no such thing as bump, opacity or reflection maps etc. If you want these effects you have to "paint" them onto the one texture. See Adding Textures for further details.

Lights
Again video cards are often limited to 8 lights on screen at once. The type of light also affects performance. See Adding Lights for further details.

Sounds
As with textures, most sound cards can only play back 8 sounds at once within your Synthetic Environments. This is not usually a problem as sounds can be combined and if anyone were listening to more than 8 distinct sounds at once it would probably be very disorienting! See Adding Sounds for further details.

Filesize
Filesize is a limiting factor if you intend publishing your Synthetic Environment on the Internet. Most people are still using analogue modems, the fastest of which (56kbps) transfer data at a theoretical maximum rate of around 7000 bytes (or characters) per second. At this speed a 2Mb Synthetic Environment would take over 5 minutes to download. Studies have shown that most people would have long since given up and gone elsewhere. Welcome to the age of instant gratification!

If, however, your target audience is likely to be using a broadband Internet connection (like ISDN, ADSL, cable or satellite) then a 2Mb Synthetic Environment is not unreasonable. Broadband services are becoming more common now that the price has plummeted.

back to top | return to Plan


VRML Specific Limits

In addition to those mentioned above the most glaring limitations of VRML are as follows:

No Shadow Casting
Real-time shadows are computationally intensive so they have been left out of the VRML specification. Lights still shade every object in the scene but shadows cannot be cast from one object onto another. This limit is most obvious when placing an external light (to mimic the Sun) which then illuminates objects inside buidings or behind walls!

You can approximate shadows by either creating flattened, grey, transparent versions of your objects or painting the shadow onto an object's texture. Using a texture is the preferred option as fewer polygons are required.

No Reflections
Likewise, reflections are not supported. Reflections can be mimicked by placing mirrored copies of objects behind flat, almost 100% transparent surfaces. Of course the downside is you effectively double your polygon count!

Performance
Because VRML was designed as a general purpose VR format and is usually displayed via a plug-in for a web browser, it doesn't perform as fast as say an optimised, special purpose gaming engine like Quake that accesses the graphics hardware at the lowest level possible. With VRML you sacrifice performance for the benefits of wider application, distribution via the web and open standards.

Plug-in Compatibility/Compliance
There are a number of VRML plug-ins in common use but there are a few inconsistencies between them. Most of these are minor and don't represent any significant problem at the level this tutorial is aimed at.

back to top | return to Plan