CCMESH and PTex in Softimage 2013

Discussions concerning programming of SOFTIMAGE©
User avatar
nbreslow
Posts: 23
Joined: 14 Feb 2012, 21:17
Location: New York, NY
Contact:

Re: CCMESH and PTex in Softimage 2013

Post by nbreslow » 03 Aug 2012, 16:40

Just for completeness I am cutting a pasting the way Renderman handles Catmull-Clark Subdivision Surfaces (from the 3D Delight User Guide). Mental Ray has all these capabilites but they are not supported properly in Maya. Maybe you can bring the proper implementation to Softimage with your work:
5.3.1 Subdivision Surfaces
Catmull-Clark subdivision surfaces are supported by 3Delight1. All standard tags are recognized:

"hole" A per-face value, tagging faces that are considered as holes. The parameter is an array of integers listing the indices of the hole faces.

"corner" A per-vertex value, tagging vertices that are considered semi-sharp. The tag should be specified with an array of integers, giving the indices of the vertices as well as an array of floating point values giving their sharpness. Corners are smooth at sharpness 0.0 and grow sharper as the value is increased.

"crease" A per-edge value, tagging edges that are considered as semi-sharp. This tag is specified with an array of integers, indicating the list of vertices that form an edge chain. An array of floating point values specifies the sharpness value for each edge in the chain.

"interpolateboundary" A per-surface value, specifying that boundary edges and vertices are infinitely sharp. This tag takes an optional integer parameter with the following possible values:
• 0 - No interpolation, the default behavior.
• 1 - Full interpolation: infinitely sharp creases are added to boundary edges and infinitely sharp corners are added to boundary vertices of valence 2. This is the behavior obtained when the tag is specified without a parameter.
• 2 - Interpolation of edges only: infinitely sharp creases are added to boundary edges.

"facevaryinginterpolateboundary" A per-surface value which allows using either true facevarying (set to 0) or a facevertex-like version (set to 1) which smooths out the boundaries. The default value is 1 and can be changed in ‘rendermn.ini’ with the "/3delight/subdivisionmeshfacevaryinginterpolateboundary" key.

Unlike other rendering packages, 3Delight does not attempt to tesselate the entire subdivision surface into many small polygons (thus taking a large amount of memory); instead, a lazy and adaptive process is used to generate only those portions of the surface that are needed for some specific bucket.

All standard variable types are supported: constant, uniform, varying, vertex, facevarying and facevertex. facevertex is used exactly as facevarying but interpolates the variables according to surface’s subdivision rules.
Basically you can use prman tags to specify per model how the model and UVs should be interpolated at render time :

facevaryinginterpolateboundary tags
  • 0 : linear, no smoothing

    1: default behaviour, everything internal and on border are smoothed, apart from vertices with 2 incident edges that also meet at one face only which are sharp creased

    2: all internal points are smoothed and also those on border , as including vertices with 2 incident edges that also meet at one face (so everything is smooth)

    3 : internal points only are smoothed all vertices on a discontinuous boundary are subdivided with a crease, so smooth inside border, linear on border
I won't bug you any further - just wanted to post the info. Thanks,

-Nick

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

Re: CCMESH and PTex in Softimage 2013

Post by Daniel Brassard » 03 Aug 2012, 18:37

Not sure if we are talking about the same subject now. Here is how Softimage handle point and vertex crease and spikes for Subdivision surfaces.

http://softimage.wiki.softimage.com/xsi ... m#Rcd40588
$ifndef "Softimage"
set "Softimage" "true"
$endif

User avatar
nbreslow
Posts: 23
Joined: 14 Feb 2012, 21:17
Location: New York, NY
Contact:

Re: CCMESH and PTex in Softimage 2013

Post by nbreslow » 03 Aug 2012, 20:41

I think I have taken it a bit off topic..sorry about that!

Just got a bit caught up in my own issue with UV smoothing and took it there. My bad,

-N

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

Re: CCMESH and PTex in Softimage 2013

Post by Daniel Brassard » 03 Aug 2012, 21:33

Hi Nick,

Don't feel bad, there some good suggestions for later use in what you posted.

Cheers!

Dan
$ifndef "Softimage"
set "Softimage" "true"
$endif

User avatar
nbreslow
Posts: 23
Joined: 14 Feb 2012, 21:17
Location: New York, NY
Contact:

Re: CCMESH and PTex in Softimage 2013

Post by nbreslow » 09 Aug 2012, 15:50

At the risk of going even further OT I saw this recently and thought of you: http://www.opensubdiv.com/. Here is a synopsis from the Pixar site:
OpenSubdiv is a set of open source libraries that implement high performance subdivision surface (subdiv) evaluation on massively parallel CPU and GPU architectures. This codepath is optimized for drawing deforming subdivs with static topology at interactive framerates. The resulting limit surface matches Pixar’s Renderman to numerical precision.
Looks interesting! I forked it but haven't had time to really take a hard look at it. Being a C newb it will probably be out of my league...

-N

Post Reply

Who is online

Users browsing this forum: No registered users and 21 guests