Btw, regarding Instances, Models and their Instance Groups, when you
take a closer look at what's going on when you deal with Instances:
1) By instancing a Model, an 'InstanceGroup' is created under the Model.
This is a special kind of a Group, because it has only one Parameter (
as for the "Associated Models" Group of a Light ), but despite this fact
it is a class of siGroupID, and of Type "#Group", and nothing, afaik,
distinguishes it from a regular Group, even from the API point of view.
-> Suggestion: Add to InstanceGroup some Property, or subclass its
Type ?
2) The only thing which is done by instanciating a Model wich cannot be
reproducing manualy by the user is the creation of this special
InstanceGroup. From here, you can manualy create an empty Model ( Model
-> Create -> Model -> New Model ), select it, then right click to the
InstanceGroup of one instanciated Model and -> Add To Group. Now our
empty Model is an Instance and it as been automagicaly recognized as
such, and it works. But why then, can't we drag&drop Models into
InstanceGroups ? We have to right click on an InstanceGroup -> Add To
Group.
-> Suggestion: Allow drag&drop of Models onto InstanceGroups ?
3) A side effect of the 2) observation is that you can add to an
InstanceGroup a non-empty Model. Lets say you have a Model wich contain
a Cube, and you add it to the InstanceGroup of another Model. It works,
you now can see both the Instanciated object and the original Cube at
the same time. Cool to add some instanciated objects to an existing
Model. But for this workflow to be efficient, we would need to be able
to create this famous InstanceGroup on a Model without actualy
instanciate the Model itself by creating other Models.
-> Suggestion: Add a Command "Add InstanceGroup" to the contextual menu
of a Model ?
4) An Instance can be part of several InstanceGroups ! You can add a
empty ( or not ) Model to the InstanceGroup of several instanciated
Models. Unfortunately, instance are not combined, you allways see the
instance of the first Model you added to its InstanceGroup.
-> Suggestion: Combine Model Instances taken from several
InstanceGroups ?
5) Idealy, more than combining Model Instances taken from several
InstanceGroups, there could be a way to select wich Instance source is
active for an Instance added to several InstanceGroups. And an
animatable way. So we could switch on the fly wich Instance Source is
seen from an Instance, at what time.
-> Suggestion: Not sure how to present this feature, but could worth the
brainstorming on it.
6) Now, take our non empty Model added to an InstanceGroup of another
Model. If you want to Instanciate this non empty Model it doesnt work,
well, it works but just like if you added an Instance of the original
instanciated Model. If we could really Instanciate instanciated model (
including their own objects ) then we could compose cascaded instances.
And this could open an all new world of Instance usablity.
-> Suggestion: Add cascade ( or iterative ) instanciation to non-empty
Model added to InstanceGroup(s). Another way to present it is to be able
to have an InstanceGroup on an Instance.
Just some thoughts.
--
guy rabiller | 3d technical director (at) LaMaison