[opensource-dev] Open Development project: extendingavatar wearables

'Carlo Wood' carlo at alinoe.com
Mon Mar 29 07:53:54 PDT 2010


I like this idea!

To translate it back to it's purest abstract form,
we would like to be able to construct outfits in
an object oriented way: be able to derive an outfit
from other outfits.

The "folder link" would be a pointer to the "base class"
so to speak.

However, we have to solve the following problems:

1) If I'd add a link from every outfit to 'naked',
then right-clicking an outfit folder and selecting
"Remove items" would become pointless (broken).

2) If the derived outfit has an attachment on the
same spot as one of the base outfits, then we need
to make sure that most-derived one prevails. I doubt
that is already functional.

3) Once it is allowed to wear more than one wearable
of the same type, it becomes totally unclear what
you want to do with "add to outfit". I doubt that
in most cases you want to actually only put on extra
shirts and not take off the previous ones.
Combining folders in this object oriented way should
allow to specify if, at the derive level, if a "add"
action should *remove* the items of the same type in
the base outfit(s) (like happens with attachements),
or that you want those to stay, and just add to it.

4) Finally, such way to derive from another outfit
would make it impossible to specify an ordering of
the combined wearables: what to do? Always put all
new shirts in the derived outfit on TOP of the ones
in the base class outfit? Also unclear.

On Mon, Mar 29, 2010 at 04:28:30PM +0200, Kitty wrote:
> > This method as several disadvantages: it's a lot of work, I 
> > have to find back the folder outfit that I'm currently 
> > wearing, there is the danger that I accidently click 'replace 
> > outfit' in the last step and it causes often two or three 
> > rebakes instead of one.
> > 
> > What I'd like is an improvement here, a way to switch outfits 
> > with a single click.
> > 
> > Does anyone have ideas?
> 
> Folder links would work fine for that...
> 
> Create a folder link to your "Naked" folder inside of both the "Swim outfit"
> and "Disco Outfit": when you right-click and "Replace Outfit" from one of
> the other LLAppearanceMgr::updateCOF() would follow the folder link inside
> of the outfit folder and collect in the items from the "Naked" folder as
> well.
> 
> Right now it doesn't actually follow folder links but since there is code in
> place for it (take a peek at LLInventoryModel::collectDescendentsIf I
> think), it's probably on the roadmap *somewhere* :). If not, it probably
> shouldn't take that much coaxing to get it working :p.
> 
> [Personally I really dislike like the "Outfit concept" though and much
> prefer "Add to Outfit" on the new folder followed by a "Remove from Outfit"
> on the old folder if need be because it's infinitely more flexible than
> being forced to always wear a certain "outfit" one specific way]
> 
> Kitty
> 

-- 
Carlo Wood <carlo at alinoe.com>


More information about the opensource-dev mailing list