Skin node problem with two or more primitives.

   5244   2   1
User Avatar
Member
33 posts
Joined: 2月 2009
Offline
Hi,
I'm trying to skin a outer loop with a inner loop of a primitive, like Figure 1.
But I get Figure 2.
Also I get the right result using one primitive. Any ideas how I can get a result like figure 1?
Cheers,
Alex

Attachments:
skinERR1.jpg (52.6 KB)
skinERR2.jpg (24.1 KB)

User Avatar
スタッフ
1182 posts
Joined: 7月 2005
Offline
Can you post the file itself? Turn on point numbers and you will see that the points from one shape are probably lofting to the right points on the second shape based on number - It is possible to reorder the numbers using a sort node. If I can see your file they I can probably fix it to show you what I mean.

Robert
Robert Magee
Senior Product Marketing Manager
SideFX
User Avatar
スタッフ
2540 posts
Joined: 7月 2005
Offline
It's all in the Skin parameter of the Skin SOP. Processing patterns.

It's all about the sort pattern in the input geometry. If you built the geometry procedurally, there will be two ways you want to process the geometry:

Groups of N Primitives
or
Skip every nth Primitive

I highly suspect that the option to Skip every Nth Primitive is the option you want.

I generally proceduralise either option as they are usually built using some sort of SOP procedure to begin with.

Groups of N Primitives = skin all faces in an ordered group that is duplicated. This usually requires finding out how many prims are in each group you want to skin and they have to be in a successive primitive number order:
skin( 1, 2, 3, 4 ), skin( 5, 6, 7, 8 ) … skin( n-3, n-4, n-1, n )
The Groups of N Primitives is the number of primitives in each copy/bunch in your input.

Skip Every Nth Primitive = skin like primitives across multiple copies. This usually requires finding out how many duplicate operations you have performed. For example you have 3 copies of 2 primitives and you want to skin between the same profile in the duplicated geometry. The pattern of skinning looks like this:
skin(0, 2+1), skin(1, 2+2), skin(2, 2+3)
or skip every third primitive which is the number of copies you performed earlier.
The skip number is the number prims in each copy/bunch in your input (again).


You will find that many SOPs that process patterns have the two choices above. Group SOP definitely has these two options and more.



Have a look at the help card for the Skin SOP and Group SOP. There are a few examples of how to process repeating patterns in both.

Attachments:
skin_groups_or_skip_prims.hip (55.5 KB)

There's at least one school like the old school!
  • Quick Links