While you can end up with the same result, Instances and ICE topology compounds serve different purposes and take different paths to get there.
ICE topology is designed to create/delete/modify geometry via rules/algorithms. Define your own vertices, and use the other nodes to connect the dots to form geometry. You can reuse the same vertex definitions across many geometries, but in the end you’ll have multiple copies of the geometry in memory. For example, if you have a polygon mesh of 1,000 vertices and need to make 50 copies of the object, in the end you’ll have 50,000 vertices. Instances are intended to reduce computation and resources to draw the same thing multiple times with only subtle adjustments such as transformations. A model is loaded into memory once, and that copy of data is used to redraw the model many times (ie; instanced). In the end, only one copy of the geometry exists. The rest are placeholders (nulls) to act as instruction to where to place/draw the instances. Using the above example, you’ll only have 1,000 vertices in memory no matter how many instances you make. How the renderer handles that information varies. You can make instances on top of instances, however you’ll need to do the work to figure out how to offset an instance relative to the instance it’s being placed upon. Easiest way to do that is to lookup the instance master as you’ll have access to the original geometry, do your offset computations, then compute the local transform from that offset to the instance model null. That offset should be used to offset the 2nd instance from the first. In more concrete terms: If you have instances of houses and birds and you want the bird instances to sit in random locations on the roofs of the house instances, then you should perform your offset computations on the house instance master (raycast from sky towards roof, for example), compute the transform to get from the house instance master model null to the spot on the roof you want to place the bird instance, then apply that transformation to the house instance located elsewhere in the scene where the bird instance will be applied. From the SDK’s point of view, an instance is a special case null with a fancy icon. Matt From: [email protected] [mailto:[email protected]] On Behalf Of pedro santos Sent: Monday, August 04, 2014 8:32 AM To: Softimage Mailing List Subject: Re: Instances vs Topology Mesh Guess the Gif doesn't work in the mail, here goes the link to the image: https://dl.dropboxusercontent.com/u/143766132/bin/FractalCube.gif Cheers On Mon, Aug 4, 2014 at 4:30 PM, pedro santos <[email protected]<mailto:[email protected]>> wrote: I was polishing my coumpound to make copies of a group of polymeshes onto a polymesh points/edges/vertices, through ICE Topology and struggling a lot to pass properties like UVs from the each object in the group to the polygns in the topology. Something that is already implemented with Instance shapes. So why bother with ICE Topo at all? Since this effefort was made to "copy" LightWave's instancing I tried to get something to work here that I can't in LW: Get instances over instances. In ICE Topo case, getting copies over copies. And things stack up. Something I don't know if, but guess I couldn't make with instance shapes. This is on its base just one cube. It's copied to each of his own faces and the same done for the new copies. When I rotate the cube's positions all the copies follow. [https://dl.dropboxusercontent.com/u/143766132/bin/FractalCube.gif] While I guess ICE Topo performance and property transfer can't rival with instance shapes, I guess I found a case where it allows something unique. Any other cases to consider ICE Topo vs instance shapes? Cheers Pedro -- ________________________________ [http://i153.photobucket.com/albums/s202/animatics/probiner-sig.gif] Pedro Alpiarça dos Santos Animator 3DModeler Illustrator >> http://probiner.x10.mx/ -- ________________________________ [http://i153.photobucket.com/albums/s202/animatics/probiner-sig.gif] Pedro Alpiarça dos Santos Animator 3DModeler Illustrator >> http://probiner.x10.mx/

