GuidesHow to be a virtual god: constructing worlds in VRML 2.0 on...

How to be a virtual god: constructing worlds in VRML 2.0 on a PC

Developer.com content and product recommendations are editorially independent. We may make money when you click on links to our partners. Learn More.



God creates world. World creates man. Man creates computer. Computer creates world. Computer becomes God. Well, the digital box has not quite acquired divine powers, but people using it now have the ability to create their own three-dimensional worlds, albeit virtual ones.

Virtual Reality Modeling Language (VRML) can be divided into two parts to make it easier to understand. “Virtual reality” describes the ultimate goal of VRML: to become a metaphor for reality. It employs many of the same concepts for perceiving reality: navigation, gravity, light, color, space, sound and movement. The “modeling language” used to visualize this virtual reality starts with a modeling program. A modeling program allows the user to graphically create objects and space. These models are translated into VRML and viewed in a VRML browser. Browsers render the VRML on the fly, thus creating perceivable space for the user to navigate through.

There are many methods used to create VRML. Every VRML company has its own “cocktail” of tools to produce customized files but, generally, a modeling program is used to create geometry and a VRML authoring program is used to add interactivity to the geometry. The following list of tools is fairly standard to the Internet community:

  • 3D modeling software:
    FormZ offers the most robust modeling capabilities. It exports to .dxf and .wrl (VRML) file formats. 3D Studio Max is also robust and includes some VRML authoring capabilities. The VRML exporter for 3DSmax can be downloaded off Kinetix’s site.

  • Translators:
    InterChange by Viewpoint is the most comprehensive file translator program on the market. You can use it to translate .dxf, .3ds, and .obj file formats into .iv (inventor) format which can be imported into CosmoWorlds for VRML authoring.

  • VRML authoring software:
    Files from modeling programs can be translated into inventor (.iv) format and imported into CosmoWorlds for the PC. It is currently in beta, but will be released soon for the PC. It is one of the most advanced VRML tools available.

  • Text editor:
    VRML is an ascii-based language so you will need to edit the code by hand for certain effects. Site Pad Pro and BBedit will do the job.

  • Internet browsers:
    Netscape and Microsoft Internet Explorer are industry standards which provide the most stable framework for VRML browser plug-ins.

  • VRML browsers:
    World View and Cosmo Player, which plug in to both browsers, are the most stable advanced VRML browsers to date.

  • Texture map creation tool:
    Although textures can be downloaded from libraries off the Web, you will inevitably have to make your own in Photoshop.

At this point you are probably a bit overwhelmed by the list of tools you have to master in order to be a virtual god. Below are three approaches to creating VRML. Common to all these approaches is a set of guidelines that should be followed. “Lite” or small files perform the most efficiently in VRML. That basically means the scene should contain no more than 3000 polygons, only a few light sources, no more than a few animations, and a sparing amount of texture maps. The one piece of hardware that can significantly improve the speed at which you view VRML files in your browser is a 3D graphics card. The best way to find the approach for you is to define what kind of VRML you want to create and try out some of the software.

Approach 1: CosmoWorlds to VRML

CosmoWorlds is an “all in one” authoring tool for VRML. It has modeling and VRML post-production capabilities, so the user can do everything within one software package. It is the the only tool that allows users to graphically add every type of interactive VRML node and create animations. The one drawback is that the modeling portion of the program is geared toward creating simple models.


Build geometry in CosmoWorlds

Group geometry, add color,
animations, links, viewpoints, etc.

Publish to VRML and
view in VRML browser

Simplified steps to create a VRML scene in CosmoWorlds: “Mr. Broken Bot.”

  1. Create geometry for robot’s head. Keep polygon count to a minimum. The maximum polygon count for a VRML scene should not exceed 3,000 polygons.

  2. Group geometry for animations. For example, in order to rotate the eye all relevant pieces should be grouped together so it animates as one entity.

  3. Color geometry, apply texture maps, add lights, etc.

  4. Add link to head by selecting geometry and clicking on “create link” icon. Enter URL

    http://www.construct.net/projects/brokenbot/brokenbot.html
    . This will take the user to that Web page when the head is clicked in the VRML scene.

  5. Animate robot’s eye by selecting grouped eye geometry and opening the “keyframe editor.”

  6. Create viewpoints by opening the “viewpoint editor” so user can navigate through preset viewpoints in VRML.

  7. The geometry can now be converted to .wrl format by selecting the “publish” command in the file pulldown menu.

  8. View the .wrl file in a VRML browser.
Approach 2: Modeling program to CosmoWorlds to VRML

If a more complex model of Mr. Broken Bot is desired, then another modeling tool needs to be employed. FormZ and 3DS Max are powerful modeling packages which can create every form possible, but again, VRML scenes can only handle minimal polygon counts, so be economical. The advantage of this approach is having precision modeling as well as the ability to graphically add interactivity in CosmoWorlds. The disadvantage is having to go back into the modeling program to edit geometry. This increases production time due to the translation steps every time a change needs to occur.


Build geometry in FormZ
or 3DSMax

Translate to .iv format, import into
CosmoWorlds, group geometry,
add color, texture maps, animations,
links, viewpoints, etc.

Publish to VRML
and view in VRML browser

Simplified steps to create a VRML scene with Approach 2: “Mr. Broken Bot.”

  1. Create geometry in FormZ or 3DSMax.
  2. Group geometry for coloring, animations, texture maps.
  3. Export file as .dxf (FormZ) or .3ds (3DSMax).
  4. Translate into .iv format using InterChange.
  5. Import .iv file into CosmoWorlds.
  6. Follow steps 3-8 in Approach 1.
Approach 3: 3D Studio Max to VRML

This approach is a hybrid of the first two approaches. 3DSMax is a professional modeling package, so it can create complex models for VRML. In addition, it has a VRML 2.0 exporter so interactivity can be added to the geometry. In a sense, it is similar to CosmoWorlds in that it is an “all in one” authoring tool for VRML. Unfortunately, 3DSMax does not specialize in VRML authoring so the only category it excels in is inverse kinematic animations for VRML (which CosmoWorlds does not offer).


Build geometry in 3DSMax

Group geometry, add color,
animations, texture maps, links,
viewpoints, etc.

Publish to VRML
and view in VRML browser

Simplified steps to create a VRML scene with Approach 3: “Mr. Broken Bot.”

  1. Create the geometry.
  2. Assign colors, lighting, texture maps, cameras.
  3. Animate select geometry.
  4. Under “helpers” on the “create” command panel, choose one of the VRML helper sections.
  5. Place VRML nodes in scene and link them appropriately.
  6. Select file/export.
  7. Export file as .wrl file.
  8. Configure the export dialogue box and press OK.
  9. View file in VRML browser.
  10. Adjustments can be made in the code by opening file in a text editor. Save file and view in VRML browser.

These are three basic approaches which will get you set up as a VRML author. Gradually, you can add skills such as utilizing LODs, scripts, proximity sensors, animated texture maps, etc. Before you know it, you will be moving worlds. Virtual worlds.

Links on this article:

Mark Lawton is creative director at Construct Internet Design in San Francisco. He draws upon his training as an architect to tackle the multi-dimensional demands of designing for the World Wide Web. You can reach Mark at kronos@construct.net.

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends & analysis

Latest Posts

Related Stories