Re: [Instances|Group|Model] Thoughts

Date : Wed, 30 Nov 2005 11:05:46 -0500
To : XSI(at)Softimage.COM
From : Francois Lord <francoislord(at)gmail.com>
Subject : Re: [Instances|Group|Model] Thoughts
Guy, have you thought about blogging on xsi-blog? This is exactly the
kind of material that people want to have easily accessible. I'm saying
this because your post ended up in the middle of a thread that was in
the middle of another thread (which was not too serious in the first
place), so it might not have gotten the attention it deserved.
(shameless plug for Patrick's site)

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









---
Unsubscribe? Mail Majordomo(at)Softimage.COM with the following text in body:
unsubscribe xsi


Search the XSI List archives here or use the advanced search form to search across mailing lists. Searching help is available.
This site supposedly brought to you by Benjamin Grosser and the Imaging Technology Group.