Beruflich Dokumente
Kultur Dokumente
TM
Introductory 3D Website
Content Authoring Guide
And Tutorial
Introduction
Stage 1 : Configuration
Before we create any content, please ensure your units are setup
correctly. One Infinity unit represents one metre.
1.1 From the main menu, select Customize->Units Setup. In the
dialog, set the Display Unit Scale To Metric (Meters).
1.2 Click on System Unit Setup and ensure 1 Unit = 1.0 Meters.
Using texture tiling is a good way to add detail whilst limiting the
amount of data that needs to be downloaded.
4.12 Next, we'll define what part of the geometry will display
the webpage.
a) Convert the chamfer box into an editable mesh.
b) Select the central faces of the mesh on one side and
drag the 'page' material onto them.
(0.001,0.001), (0.001,0.999),
(0.999,0.001), (0.999,0.999)
We use this approach for several reasons :1. Inserting objects by reference can substantially reduce
download time. If an object is placed in multiple scenes
multiple times, it only needs to be downloaded once. This
can also be achieved by instancing.
2. Any improvements made to the referenced object are
automatically carried through into all scenes they are placed
in. For example, consider two scenes, A and B. Scene A
contains a model of a chair and scene B contains a table
and 4 referenced chairs. If you improve the chair model in
scene A, then load scene B, the scene will contain the
improved chairs.
3. Effective use of external references enables you to
organize your artwork in a logical, hierarchical manner that
enables increases in complexity to be managed efficiently.
4. When working in a team, good use of referenced geometry
enables the improvement in one person's work to carry
through into another's automatically. This is a very powerful
collaboration technique.
5. Scene style can be changed on the fly by switching
between different versions of any given piece of geometry.
E.g. A web server could deliver different types of chair
depending on the configuration.
g) Save as <Infinity>/tutorial_1/link.max
Note the relative path in the link destination (./zone2.xsg) . Always use
relative paths when possible as this means that you can move content
around without having to change all the links.
This is better :<link id="This way !" dest="./zone2.xsg"/>
than this :
<link id="This way !" dest="mywebsite.com/zone2.xsg"/>
If you use the second technique and then move the content to
myotherwebsite.com you will have to edit all the links (and by then you
might have a lot) to get them to work. If you are deliberately linking to
another site, you have to specify the full address as normal.
You can link to any webpage or xsg format 3D website zone on the
Internet using this technique.
For example, to link to Advance Software's 3D website, you could
write :<link id="Visit Advance Software" dest="advance-software.com"/>
.. but don't test it yet, because our zone now references another called
zone2.xsg but we haven't created that yet.
Linking to a directory
If your link references a directory, Infinity will first look for a
file called index.xsg in that directory. If this is found, the zone
defined in that file will be loaded. If the xsg file is not found,
Infinity will try to load a webpage called index.htm or
index.html instead.
For example :<material id="hotspot">
<link id="Visit Advance Software !" dest="advance-software.com"/>
</>
When a website zone loads, it can take some time before all
the content appears, especially if you're using a slow
connection or if the content is complex. While the browser is
waiting for textures to load, by default, objects appear as
untextured gray meshes. You can make the incremental load
process a little more pleasing on the eye by selecting
appropriate 'base colours'. The base colour of a material tells
the browser what colour to shade the material with while it is
waiting for textures to load.
For example, you could set a green base colour for a grass
material. Objects using the grass material would be shaded
green until the material's texture download completes. This is
not the same as the diffuse colour.
a) Open <Infinity>\tutorial_1\index.max
b) Open the material editor
c) Select the wall material
d) In the extended parameters, select the filter colour* , and
set the colour to an approximate brick red colour.
* Note that this has nothing to do with Max's filtering, we
are simply using this parameter as a placeholder for our
base colour definition.
e) Re-export the scene.
When you have uploaded your content to a web server, as
described in stage 11, you will notice that the wall is shaded
red while the browser downloads the texture.
Stage 13 : Animation
Object movement and texture coordinate animations are both
supported.
You need to select either export single cycle or export looped
when exporting the content to control how the animation is to
be played.
Geometry Scale
One Infinity unit represents one metre.
To avoid problems, set your units the same way in 3DS Max.
Instanced/Referenced Geometry
For items placed in multiple locations, such as doorways,
page frames, trees, etc. you are advised to use instancing or
external references. This will substantially reduce download
time as each unique object is only downloaded once.
Viewing In 3D Studio Max
What you see in Max isn't always exactly the same as what
you see in the browser. This is due to differences in lighting
and shading techniques. Remember that 3DS Max is a high
end graphics program and has many features which are not
yet supported by Infinity. For best results, limit your use of
the 3DS Max features to those supported by Infinity.
Embedded Media
Embedded pages and video can really make a site stand out,
but they take time to download and can affect performance.
Naming Conventions
A good naming convention is recommended to prevent
conflicting materials and filenames.
Appendix 2:
Preparing Video Content
Infinity supports streaming video. In order to play back video
content, an appropriate codec must be installed on the end
user's computer. We recommend that you keep source videos
so you can convert to superior formats later.
For example, you can use Microsoft's Expression Encoder to
convert existing video into a streaming optimized format.
Link: http://www.microsoft.com/expression/service-packs/Encoder.aspx