What's New

Virtock Technologies, Inc. Is proud to announce the release of Spazz3D, Version 2.4!

Spazz3D has added support for panoramas and random panaramas to the Background node. Under the Background Property Page is a list of all the Universal Media Panoramas. We've also added a random panorama generator.

We have added a three part H-Anim Tutorial to the Help Doc.

Spazz3D now saves, imports and exports comments per node. They can be created and edited in the General Property Page.

We now support the HUD (Heads Up Display) functionality provided by the Proximity Sensor Node. There is a new Wizard that creates a simple HUD that stays with the viewer, as you walk around. It has four shapes with four touch sensors.

We've added the ability to Trigger any Group to be Hidden or UnHidden.

Added Spotlight Support.


H-Anim Support

Spazz3D has added many features to support the creation, use, and reuse of Humanoid Animation (H-Anim 2.1) Avatars. Spazz3D lets you leverage the power of the H-Anim standard by allowing you to interchange avatars and their behaviors. Spazz3D has added native support for four types of H-Anim Nodes: Humanoid, Joint, Segment, and Site. In addition, we have added the following categories of features:

H-Anim Wizards:

Create H-Anim Avatar

Generate H-Anim Animation

 Generate H-Anim Segments

 The Create H-Anim Avatar Wizard will simply load one of the provided H-Anim avatars that come with the Spazz3D Installation. We have included the 3 Level of Articulation (LOA) avatars that are provided in the H-Anim Spec. They were generously created by Matthew Beitler. LOA1 is a Minimal avatar, which is optimal for most web based applications. It has no fingers, no facial components, and a rather ridged spine. The LOA2 avatar adds fingers. The LOA3 avatar adds facial components and many spinal vertebra. It is a very complete avatar. We have added a small box Node in each segment at the corresponding Joint Center. Also, Joint Limits were liberally added. Another LOA1 avatar derived from the LOA1 Avatar from the spec is offered. It has simple geometry created in Spazz3D. Finally, a LOA3 Skeleton created by Gerard Druiven is offered. The geometry is made from simple geometric primitives, but the hierarchy is a full LOA3 model. Gerard created BruceBones with Spazz3D, without the aid of the models provided in the Spec.

The Generate H-Anim Animation Wizard will create an Animation Node, and add all the Joints of the selected avatar. From here, you can simply hit the Edit Keys toggle, select the KeyFrame, then click on the joint that you want to rotate, and click and drag to rotate the joint to the desired orientation. Click the next Joint, click and drag...

The Generate H-Anim Segment Wizard will simply create a small Box Node in each Segment at the corresponding Joint Center.

H-Anim Clipboard Commands:

Copy H-Anim Avatar

Replace H-Anim Avatar

Paste H-Anim Avatar

 Paste H-Anim Joint Limits and Constraints

 Copy H-Anim Animation

 Paste H-Anim Animation

 These six new Clipboard commands let you take behaviors from one avatar, and apply them to another avatar. After Copying an avatar into the special H-Anim Avatar Clipboard, you can then open another scene, select any node within an avatar hierarchy, and hit the Replace Avatar command. And, Huzzah, the avatar in the clipboard will replace the selected avatar, and inherit ALL the behaviors associated with the selected avatar. The Paste avatar command will simply Paste the avatar into the world without mapping any behaviors. The Paste Joint Limits and Constraints will paste the Joint limits and Joint Constraints from the avatar in the Clipboard to the selected avatar. Spazz3D will automatically constrain the translation and scale of all Joint Nodes ( Excluding the HumanoidRoot Node ). You are allowed to modify these constraints. Also, certain rotational degrees of freedom are constrained, and liberal Joint Limits are added to the provided avatars. The Paste Joint Limits and Constraints command makes it real easy to Paste your favorite set of constraints from one avatar to another. Spazz3D does enforce the constraints and joint limits while designing animations.

Conversely, You can select an Animation Node that animates an H-Anim avatar, and Copy that into the special H-Anim Animation Clipboard. Then, select any avatar, and Paste the H-Anim Animation. The Animation Node Stored in the Clipboard will be remapped to the selected avatar.

Note, the Copy/Paste H-Anim Animation feature will only move one animation node at a time, while the Copy/Replace Avatar can move the entire H-Anim Behavior from one avatar to another. The avatar and animation will persist in their own special clipboards indefinitely.

H-Anim Export Commands:

Export H-Anim Behavior

 Export H-Anim Avatar

Export H-Anim Container

 The clipboard operations described above will let you remap behaviors from one avatar to another, creating a single world that can be exported with the conventional Export VRML command. These Export H-Anim commands will let you export the avatar separately from the behavior. They are then brought together on the Client end. The Export H-Anim avatar command will export the selected avatar, omitting any behaviors or superfluous geometry or other nodes. The Export H-Anim Behavior command will export everything in the world excluding the avatars. The avatar's behaviors will be exported. The behavior is written in the form of an EXTERNPROTO which is passed a single MFString field, which contains the url of the avatar. The Proto will read in the avatar, and dynamically attach the behaviors to the avatar. The Export H-Anim Container will create a very brief file that brings the behavior together with the avatar. You must specify a url for both an avatar, and a behavior. The default urls are the paths to the most recent avatars and behaviors that have been exported.

This methodology fits in well with the Universal Media, media-filters technology being developed by Aaron Walsh, chair of the Universal Media Working Group. The idea is that a library of avatars, and a library of behaviors can exist out on the web, and can be combined client side. Also, these could be stored in a persistent cache, using the same mechanism as the Universal Media Textures that are currently supported by Spazz3D and Blaxxun Contact.

H-Anim Creation Commands:

Create H-Anim Humanoid

 Create H-Anim Joint

 Create H-Anim Segment

 Create H-Anim Site

 These function like any other Spazz3D creation command. Once created ( or imported ), you can edit the H-Anim Node attributes with the Property Pages, just like any other Node.

H-Anim Node Conversion Commands:

Convert Group to H-Anim Humanoid

 Convert Group to H-Anim Joint

 Convert Group to H-Anim Segment

 Convert Group to H-Anim Site

 Convert H-Anim node to Group

 These are simple, self explanatory conversion commands.

IFS Editor 
The following new features have been added to the IFS Editor:

Subdivided Surfaces

 NURBS Surface Editor

 New Preview and Selection Mechanism

 Many new Commands

 A major extension to the IFS Editor is the addition of Subdivided Surfaces. You can edit these Subdivided Surfaces in the IFS Editor. The number of Subdivisions is simply a new attribute of the IFS. Inside the IFS Editor, you will see the wireframe of the crude shape and shaded image of the smooth subdivided surface. It dynamically updates as you drag the vertices around so you can easily create the desired shape.

We now have a Nurbs Surface Control Mesh Editor. Its works inside of the IFS Editor. If you select an Extruded, Swept, or Sculptured Nurbs Surface, then hit the IFS Editor icon, it will convert it to a general Nurbs Surface. You can then modify the vertices of the Nurbs Control Mesh.

Spazz3D guides you in selection by highlighting a vertex when you put the cursor near a vertex. Place the cursor near an edge and the edge will highlight. If the cursor is on a face, but not near an edge or vertex, the face will highlight. Of course, clicking the mouse will select the highlighted vertices. You can also force the type of vertex selection with the new keyboard modifiers: [Shift] forces Triangle selection. [Space] forces Edge selection. [S] forces Vertex selection. [D] allows for Rectangle Selection. And, [CNTL] allows you to add to the list of selected vertices. Drag while pressing the CNTL key will produce a copy of the selected faces. The status bar provides a quick reference to these modifiers. Double clicking on a vertex will select all the triangles adjacent to the vertex. Double clicking on an edge will select both triangles adjacent to the edge. Double clicking on a triangle will select all the vertices in the plane of the triangle. The [CNTL] modifier also works with the double click operations.

 There are ten commands in the IFS Editor that will manipulate the shape:

Pops the selected Face out away from it's current location while maintaining contact.

Creates a copy of the selected Triangle.

Copies the selected Triangles into a new IFS.

Deletes all Triangles that are adjacent to the selected vertices.

Deletes all selected Triangles.

Removes the selected vertices and rebuilds the effected Faces.

Creates 1 new Triangle from the 3 selected vertices.

Creates Triangles to fill the gaps between the selected vertices. Fills all gaps if no vertices are selected

Moves the selected vertices into a common plane.

Spazz3D also lets you Refine the Mesh, using the area in the EDIT Property Page labeled "Refine Mesh". You can refine the entire IFS, just the selected vertices, or the Faces inside the "Sphere of Influence". The Refine operator will add Vertices and faces to increase the Mesh Density. When you exit the IFS editor, any refined faces that are still planar will be merged together. It will only maintain the new vertices that it needs to represent the shape. So, you can refine the entire IFS, modify only the region you are interested in, and the region outside the modified region will automatically revert to its original density. There are five variations of the Refine operation:

Refines all the Edges in the IFS.

Refines all the Edges in the IFS that have at least one selected vertex.

Refines all the selected Edges in the IFS.

Refines all the Edges inside the sphere of influence.

Adds a vertex to all the selected Triangles.

All of these commands are accessible by right-clicking the mouse button.

We've added new graphics to our icons. Plus the toolbar icons are fully dockable. They also remember where you repositioned them and will return there when re-entering Spazz3D. Under the View Menu, there is a new Icon Options command. It will allow you to change the size of the icons or restore the icons to their default positions.

We've added a command that will allow you to Copy Selected Node into the clipboard. The command will export the VRML of the selected node or hierarchy and places the ascii VRML in the Windows clipboard.

A new Dialog Bar has been added to aid in modifying the position, scale and rotation of a selected node. Three slider bars will control the XYZ values independently. Using the slider bar is equivalent to pressing the [X], [Y], or [Z] keys while dragging the cursor in the Window.

Spazz3D now supports Import and Export of the Color Per Vertex and Color Per Face attributes of the IFS Node. These are not yet editable in the IFS Editor.


We've added many enhancements to Spazz3D Version 2.0. Spazz3D can import Web3D VRML animations and sensors. We've added Shout3D support! Spazz3D can export a Shout3D file. With the click of a button, you can export your Spazz3D authored world in Shout3D format and start the Shout3D wizard. The Shout3D wizard is kind enough to put all your image files in the correct location. The wizard also has this cool "Publish" feature that helps you keep track of all your projects.

Our Index Face Set Editor allows you to manipulate a raw IFS, and the texture coordinates! You can select single or multiple vertices and drag, or apply scale, or rotation. You can refine the mesh to add more faces. The Sphere of Influence is a powerful tool in the IFS editor that lets you literally influence all the vertices inside the semi-transparent sphere. As you drag the sphere around, you will drag all the vertices inside the sphere. We've added many options in the IFS editor that allow you to create cool deformation effects. The texture Coordinate Editor lets you dynamically change the texture transform of textures applied to objects.

Nurbs surfaces can be converted to an Indexed Face Set. Added support for the Nurbs Deformation Node inside the Spazz3D Browser. Nurbs performance enhancements. Nurbs tessellation control.

New, faster graphics engine.

Spazz3D is the first application to fully support Universal Media.

PNG support including transparencies.

Added Keyboard Rotation Modifiers. Now while rotating an object, you have several hotkeys available to rotate in XYZ plane, vertical, or horizontal.

Texture Thumbnails


In Spazz3D Version 1.1, we have added many enhancements that make Spazz3D even more powerful and easier to use than ever.

Our new Magic Cookie Wizard is an extension to the Spazz3D 3D True Type Font Wizard. It presents a palette of the vast array of symbols and shapes hidden inside the True Type Fonts. The Wizard makes it real easy to apply a material, texture, and canned animation, in addition to selecting the True Type Font Symbol.

We have also added support for two Nodes that have recently been proposed by Blaxxun for inclusion into the VRML Spec; the NurbsSurface and the NurbsDeformation. Spazz3D's Extruded Surface nodes provide for a natural way to define the Nurbs Surface Control Point mesh. Spazz3D fully supports the Nurbs Surface Node, including Textures and VRML Import. We also added support for the NurbsDeformation Node. A very simple interface allows users to deform an entire group of nodes using four canned deformation modes, and a few other parameters that the user can play with.

But, the most powerful enhancement added to Spazz3D Version 1.1 is Morphing! Spazz3D animations are no longer limited to rigid body movements. Now, we can dynamically bend and modify the shape of the Extruded Nodes by defining the Spine Vertebra Transformations at each Keyframe, and/or defining the Cross Section at each Key Frame. A very simple interface allows access to this very powerful tool. Morphing can also be applied to NurbsSurface Nodes, thus creating very smooth animation.


Version 1.0 of Spazz3D provided our users with an application that made it very easy to create VRML 97 content, including Avatars for use in Blaxxun's Cybertown. Spazz3D is a typical Windows application. Spazz3D virtually eliminates the need to ever type a number. Virtually all of the numerical values can be modified by dragging the cursor. It uses OpenGL to fully render 3-D images. It supports lighting, shading, and texture mapping of 2-D images on the 3-D objects. Spazz3D has an extremely sophisticated and robust Adaptive Infinite Undo / Redo system. You can create 3-D text, with True Type Fonts. Spazz3D's Browser Simulation Mode lets you experience your world without leaving the application. Spazz3D also provides a Browser Simulation Debug Mode where you can step through time as you are presented with enough information to understand exactly what is happening. Spazz3D will FTP your VRML world file and all the dependent files up to your web site. You can also create animated AVI files, and static JPEG and Bitmap files.