Learning ICE - Move Cube Polygons

Discussions about SOFTIMAGEs© Interactive Creative Environment©
User avatar
TwinSnakes007
Posts: 316
Joined: 06 Jun 2011, 14:00

Learning ICE - Move Cube Polygons

Post by TwinSnakes007 » 06 Jun 2011, 21:51

I want to just move the polygons of a simple cube 1 unit along their respective normal.

The approach I'm trying is:

* Create Cube
* Create empty mesh and Clone Cube data using ICE [Topo]

Now I can get the list of polygons at this point, but how to move them?

Is there a better approach?

Thanks.

User avatar
claudevervoort
Posts: 89
Joined: 16 Oct 2009, 00:56
Location: Montréal, QC, Canada

Re: Learning ICE - Move Cube Polygons

Post by claudevervoort » 07 Jun 2011, 02:43

Not sure what you are trying to do. Have you looked towards ICE Deformation instead? (i.e. applying an ICE Tree to transform some points by translating them across the normal?).

Claude

User avatar
TwinSnakes007
Posts: 316
Joined: 06 Jun 2011, 14:00

Re: Learning ICE - Move Cube Polygons

Post by TwinSnakes007 » 07 Jun 2011, 02:51

claudevervoort wrote:Not sure what you are trying to do. Have you looked towards ICE Deformation instead? (i.e. applying an ICE Tree to transform some points by translating them across the normal?).

Claude
Imagine the 6 sides of a cube, and then each polygon is moved 1 unit along it's normal, as if the Cube was exploded. So it's not deforming the cube per say, it's more of disconnecting the polygon components and moving them.

User avatar
TwinSnakes007
Posts: 316
Joined: 06 Jun 2011, 14:00

Re: Learning ICE - Move Cube Polygons

Post by TwinSnakes007 » 07 Jun 2011, 04:56

AceMastermind just uploaded a set of Ice Tutorials to YouTube, so I'll watch those and see if that helps.

I was gonna pay for the DigitalTutors content, just to help me get my head around ICE, but this should do just as well.

Chris_TC
Posts: 411
Joined: 22 Mar 2010, 16:43

Re: Learning ICE - Move Cube Polygons

Post by Chris_TC » 07 Jun 2011, 09:06

TwinSnakes007 wrote:* Create Cube
* Create empty mesh and Clone Cube data using ICE [Topo]
You can also make an ICE Tree on an empty polymesh and just use the Primitive node in the ICE Tree to make a cube.

As far as I know, you can't move polygons, you can only move points. When you select a polygon in Softimage and move it, internally this selection gets converted into points. That's what you have to do.
Get Data: self.polygontovertices returns all the vertices (as vertex indices) of every polygon. Vertex indices can be turned into locations with Point Index to location. And plugging a location into Get Data gives you .pointposition of that vertex.

I feel there will be some context problems. Would have to actually try things out to see how it works.

User avatar
Hirazi Blue
Administrator
Posts: 5113
Joined: 04 Jun 2009, 10:15

Re: Learning ICE - Move Cube Polygons

Post by Hirazi Blue » 07 Jun 2011, 09:33

The "problem" (and I use that term lightly) with the stuff AceMastermind uploaded is its age (most was made for XSI 7 or earlier, AFAIK), so you won't find any "ICE topology" stuff in there.
I'm not behind Softimage right now, but what you're looking for, I guess, seems to be the "Disconnect Components" (Tool Tab > Topology) node to disconnect all your individual polygons before being able to indivually move them...
Stay safe, sane & healthy!

Chris_TC
Posts: 411
Joined: 22 Mar 2010, 16:43

Re: Learning ICE - Move Cube Polygons

Post by Chris_TC » 07 Jun 2011, 10:07

An issue lies within the idea of moving points along polygon normals. Points belong to multiple polygons. So which normal should it be moved along? If you just average out all the polygon normals, you get the point normal, which essentially scales the cube. <<Get self.pointposition>> and <<Get self.pointnormal>> into <<Add>> into <<Set self.pointposition>>.

If you disconnect everything like Hirazi suggests, you can move them along their polygon normal because points will only belong to one polygon. But you will end up with an "exploded" cube (or rather 6 flat squares).

User avatar
Hirazi Blue
Administrator
Posts: 5113
Joined: 04 Jun 2009, 10:15

Re: Learning ICE - Move Cube Polygons

Post by Hirazi Blue » 07 Jun 2011, 10:17

Yes, I'm having a hard time picturing where this should lead
(as moving the polygons along their normal sounds a lot like extruding them,
if you want to keep the object intact/in one piece,
and moving all polygons along their normal without extruding/disconnecting basically is just scaling the cube)
But you should be able to somehow reconnect the polygons after moving them...
Adding Polygons?
:-\
Stay safe, sane & healthy!

User avatar
TwinSnakes007
Posts: 316
Joined: 06 Jun 2011, 14:00

Re: Learning ICE - Move Cube Polygons

Post by TwinSnakes007 » 07 Jun 2011, 14:29

Chris_TC wrote:If you disconnect everything like Hirazi suggests, you can move them along their polygon normal because points will only belong to one polygon. But you will end up with an "exploded" cube (or rather 6 flat squares).
That's exactly what I am attempting to do, move each polygon individually, as I described in response to Claude. There's already an extrude polygon ICE component, so not looking to reinvent the wheel.

I've made some progress, I have disconnected each polygon from the mesh using Disconnect Component set to Polygon mode, so I guess now I just would have to move each point of the polygon like you guys said and that should work.

My next goal is to learn how to put a particle at each vertex and then have a Simulated ICE Tree effect the positions of the polygons. That should enable some pretty cool effects.

Thanks guys.

User avatar
Daniel Brassard
Posts: 878
Joined: 18 Mar 2010, 22:38
Location: St. Thomas, Ontario

Re: Learning ICE - Move Cube Polygons

Post by Daniel Brassard » 07 Jun 2011, 17:05

I assume you are trying to simulate this effect from eX-SI Support in pure ICE:

http://xsisupport.wordpress.com/2011/04 ... y-polygon/
$ifndef "Softimage"
set "Softimage" "true"
$endif

Chris_TC
Posts: 411
Joined: 22 Mar 2010, 16:43

Re: Learning ICE - Move Cube Polygons

Post by Chris_TC » 07 Jun 2011, 17:07

Right, once the vertices are disconnected, you can probably still use the point normals to move them as described above.
Or if you need the polygon normal: <<Get Data "self.pointposition">> into <<Get closest location>> into <<Get Data "self.polygonnormal">> and add that to the pointposition.

User avatar
TwinSnakes007
Posts: 316
Joined: 06 Jun 2011, 14:00

Re: Learning ICE - Move Cube Polygons

Post by TwinSnakes007 » 07 Jun 2011, 17:09

Thanks Chris, that probably saved me a few hours of research right there.

Any tips on how I could link this all up to a PointCloud?

Chris_TC
Posts: 411
Joined: 22 Mar 2010, 16:43

Re: Learning ICE - Move Cube Polygons

Post by Chris_TC » 07 Jun 2011, 19:14

You can spawn a particle from every vertex (Stephen Blair shows you how: http://vimeo.com/24214573) and then simulate the particles.

When you have the simulation, on your cube's ICE tree you do <<Get closest location on geometry (pointcloud)>> and plug that into a <<Set point position>>. I believe this should work, have not tried it.

Moderator edit: please use the URL tags - HB

User avatar
TwinSnakes007
Posts: 316
Joined: 06 Jun 2011, 14:00

Re: Learning ICE - Move Cube Polygons

Post by TwinSnakes007 » 09 Jun 2011, 03:08

Took me five days [3 hours each day after work]. But I finally figured it out, and since its all ICE nodes, its dynamic, so it responds to topology and transform changes.

Will post a tutorial this weekend in case anyone else is interested.
You do not have the required permissions to view the files attached to this post.

User avatar
TwinSnakes007
Posts: 316
Joined: 06 Jun 2011, 14:00

Re: Learning ICE - Move Cube Polygons

Post by TwinSnakes007 » 09 Jun 2011, 03:33

Here's a pic with the Primitive Mesh node set to Sphere
You do not have the required permissions to view the files attached to this post.