ordered by the precedence determined using the
concept of importance.
2.3 Definitions
A model is the visual manifestation of a 3D object.
Actions specify movement of the models. Models
can be further detailed with pictures called images.
The choreography describes the temporal
relationship of these objects to the story and each
other, plus includes ancillary objects, such as
cameras and lights. A project contains all of the
choreographies, and displays them in linear order to
create the story narrative. The most important part of
the story is the sound, followed by the models
(without images on them), and finally the images
that go on the models. A first pass of the project file
is performed to identify the models, the actions, the
file sizes, and the temporal requirements within the
choreography, so that importance can be assigned.
2.4 Object Importance
A model is comprised of many components, such as
file size, number of matrices, and actions that are
used, but a detailed inspection of over one hundred
models indicates that only a few shared components
actually indicate importance. After implementing a
simple method of parsing files and counting a
variety of components, we found the determination
of model importance needs to incorporate these
notions:
• Models with many actions have increased
importance.
• The number of occurrences of a model in the
scene increases its importance.
• Images on a model increase its importance.
Again, through inspection, actions had very few
components that contributed to importance.
Determining action importance needs to incorporate
the following elements:
• The number of times an action is used increases
its importance.
• Non-reusable actions, called chor
(choreography) actions, have increased
importance because they contain the default
placement of an object in a scene.
Images used on models are subjugate to the
model’s precedence, meaning images from higher
ranking models are all loaded before the next
ranking model’s images begin loading. Other than
that, images precedence is determined by what is
most visible on a model. Determining image
importance should include:
• “Color” images have more importance than any
other type.
• Images used multiple times have more
importance.
2.4.1 Weights
Choreographies are parsed to obtain every loadable
object and its relationship to other objects. Using the
importance criteria above, we describe heuristics
that determine precedence ranking among the
objects.
The primary sound is identified as the one with
the largest file size, and since it is preeminent, it is
always loaded first and has no numerical weight.
However, ancillary sounds (ranked by decreasing
file size) may be outranked by high-ranking models
and so must have some weight assigned to them. We
will describe the model weight determining heuristic
first.
Models should be loaded by rank, where rank is
determined by the sum of the weights of the
components of the model. As a simple
implementation, the components that comprise the
weights are given unit values. For example, every
action used on a model increases its weight by 1, but
if a model is used more than once, it only gets 1
additional unit (no matter how many times it is
used), and if the model has images on it, the weight
is also incremented by only 1 (regardless of the
number of images). All the models in the scene are
weighted in this manner and ranked in descending
order.
Actions should also be loaded by rank, where
rank is determined by the sum of the weights
assigned via our approach. If an action is used more
than once, it should have more weight, so one unit is
added. The action that places the model in the scene,
called a chor, seems to be very important in practical
implementation, so to distinguish a chor action as
the most important action, it receives a weight of
three, which is one more than a multiply used action.
Images should be loaded last, by rank and in
model order. After our inspection there seemed to be
no contributory component of images that affected
weighting other than the logical deduction that an
image used more than once was more efficient as to
load time.
Table 1 summarizes our deduced loading order
and weights of the models and actions contained in
five example choreographies.
WEBIST 2006 - WEB INTERFACES AND APPLICATIONS
458