How do you manage ICE compounds?

Discussions about SOFTIMAGEs© Interactive Creative Environment©
User avatar
bottleofram
Posts: 355
Joined: 17 Aug 2010, 09:21

How do you manage ICE compounds?

Post by bottleofram » 07 Aug 2012, 02:56

Im interested to know how you guys deal with organizing ICE compounds. I used to have a huge library on a workgroup - it moved from version to version, became fat, clunky and after a while hard to remember what 70% of it actually does. Im not primarily an ICE guy so weeks or months can pass without me touching it. Having bunch of unnecessary compounds loading up every time on startup is not ideal.

Than i worked at a place where they only allowed vanilla compounds and another one where they would require you to include custom compounds in a project folder.

So, do you have any particular system or just store them wherever and load as needed?

Thanks

EricTRocks
Moderator
Posts: 754
Joined: 25 Nov 2009, 00:41

Re: How do you manage ICE compounds?

Post by EricTRocks » 07 Aug 2012, 04:28

You should always document your nodes and use logical naming conventions. I've started putting together a small set of compounds for various tasks and have taken to setting the Taks / Category fields appropriately in the compound properties. Also filling in the author info etc.

As much info as you can put in there the better and grouping ones that serve similar purposes is obviously best as well. I have a set of compounds just for Blend Shape tasks so they are named things like: et_blendReplace, et_blendSplit, etc. I also choose a custom color for compounds that are in the same task as well. All blend shape related nodes are the same color easier to see when its all hooked up. The description field serves as a mini help doc so fill that in too.

Once you've done that your pretty set. However if you like your files organized you can put all the compounds that are in the same task group into a folder. So in your user / workgroup /Compounds/ folder create a "blendShape" folder and a "geometry" folder, and a "rigging" folder, etc.

Lastly I'd recommend create an SVN or Git repo for all of them so they can be synced to mutliple machines easily and updated easily as well. If the library gets crazy huge then you can split it into sub-workgroups for each different category of compound and only connect to the ones you need to.
Eric Thivierge
Lead Kraken Developer, Fabric Engine
http://fabric-engine.github.io/Kraken