home previous next contents # Shout3D™ 1.0 - User Guide |

## Authoring 3D for Shout3D Shout3D files can be converted from any standard VRML file. You can author in 3D Studio Max, CosmoWorlds, any tool with a VRML exporter. If the file contains no Script nodes or PROTOS, the file can be read directly into Shout3D. This document contains four sections with some specialized tips: VRML Gotchas Authoring for AOL users Authoring Line Width and Point Size Considerations for 3D Studio Max users. ## VRML Gotchas Differences between Shout3D and VRML: For a detailed description of how Shout3D relates to VRML97, read the Relationship to VRML97 document from the Shout3D specification. The most important differences are listed below: Ignored Nodes: Nodes that are not supported in Shout3D will be ignored. For example, geometries such as Box, Sphere, Cylinder, and Cone will not show up in scenes converted to s3d. It they must be viewed, convert them to IndexedFaceSet nodes before writing out the VRML file. For a complete description of which nodes are ignored, see the Removals:Nodes section in the Relationship to VRML97 document. Modulation of textures by emissiveColor, diffuseColor, and transparency: Textured objects will be modified by all fields of the Material node, unlike in VRML 97. In VRML97, then only time a Material modifies a textured object is when the texture is a luminance texture (in which case, the diffuseColor behaves as described below). In all other cases, VRML ignores the Materal fields. Shout3D behaves as follows, with behavior that is different but far more flexible and powerful: the transparency field is applied to textured objects, regardless of the type of texture the emissiveColor will be added to the texture color at a given pixel, prior to applying any lights. the diffuseColor will be multiplied to the texture color at a given pixel, prior to applying any lights. If you want your scene to look like a VRML scene, then make sure your textured objects have transparency of 0, emissiveColor of (0,0,0) and diffuseColor of (1,1,1). ## Authoring for AOL Users AOL has a feature that can break Shout3D browsers. The problem is that AOL will automatically compress all image files into a format that Java can not read or understand. Users of AOL can turn this off, by following the instructions at http://webmaster.info.aol.com,but that does not safeguard the Shout3D author against AOL users who have not turned off this feature. The workaround for this is to "fool" AOL into thinking that the images are not in fact images. To do this, you need to rename all of your image files to end with a phony extension. For example, change all myFile.jpg to myFile.xxx and then AOL will leave it alone. If you do this, make sure to change all references to the image as well. This means that your VRML file's Texture node should have an url field that specifies myFile.xxx, not myFile.jpg If you author this way, the Shout3DWizard will still successfully publish your content without harming the file extensions. ## Authoring lineWidth and pointSize lineWidth, pointSize, and Authoring Hints for these two fields: Shout3d supports two new fields, the lineWidth for IndexedLineSet, and the pointSize for PointSet. These are new fields of the IndexedLineSet and PointSet that are not supported by VRML. So Shout3D also supports authoring hints for controlling the lineWidth and pointSize. These allow you to encode values for the two new fields into the DEF name of the IndexedLineSet or PointSet node. specify lineWidth with WIDTH_X_ in the DEFName. Any IndexedLineSet with a DEF name containing "WIDTH_" followed by an integer, followed by "_" will be taken to have a lineWidth given by that integer. So an IndexedLineSet named MY_LINE_WIDTH_3_ will have a lineWidth of 3 when converted to an .s3d file. The field is set when the node is read from file. Changing the DEFName later will have no effect. specify pointSize with SIZE_X_ in the DEFName. Any PointSet with a DEF name containing "SIZE_" followed by an integer, followed by "_" will be taken to have a pointSize given by that integer. So a PointSet named MY_STARS_SIZE_3_ will have a pointSize of 3 when converted to an .s3d file. The field is set when the node is read from file. Changing the DEFName later will have no effect. ## Considerations for 3D Studio Max users When authoring for Shout3D in 3D Studio Max, the following practices will help for better output: Reset Transform Do a "Modify/EditMesh/Collapse Stack" and "Utilties/Reset X-Form" on all geometry before exporting. This may require you to detach objects/hierarchies before exporting. It is best to do this before you animate anything. Mirrored objects Mirrored objects will have inversed normals after the above operation. Correct this by "Modify/EditMesh/SubObject-Face/Select All/Flip" Materials The following parameters are supported: Diffuse Color, Emissive Color, Self Illumination, Opacity, Wire, and Diffuse Texture. All others are ignored, including shininesss and shininess strenghth. Objects should not have "wasted" multiple materials. i.e. If your object only uses 2 materials of a multi-material with 5 materials, you should create a unique multi-material for this object with only two materials. Offset, Tiling, Angle, Mirror, etc. info in the bitmap parameters are not supported. These must be done under the Modify/Edit Mesh mode. VRML export parameters In general, use the following defaults: Normals unchecked, Polygon Type/Triangles Smoothing Groups and creaseAngle Smoothing groups are not supported, Gouraud shading must be done by editing the "creaseAngle" of the VRML file. (The Max VRML exporter does not produce values for the IndexedFaceSet's creaseAngle field. So if you model a smooth object, you may find that it looks faceted in Shout3D. The solution is to add a creaseAngle field with a value greater than 0 to the offending IndexedFaceSet nodes. A value of 3.14 will yield a fully smooth object.) Rotated Coordinate System Max uses a rotated coordinate system relative to VRML97 and Shout3D. So if you author your content you may find you need to rotate it 90 degrees in order to make the "up" direction match. Bipeds are not exported correctly and will have scaling problems. Copyright© 1999-2000, Shout Interactive, Inc.