Is there an expression one can use in the Carve Sop to enter selected points from a point group (group sop) and enter their UV coordinates into the domainu and domainv sections of the channels of the Carve Sop?
I know this type of thing can easily be done manually in Maya by selecting the breakpoints you want to cut at and then cutting the curves automatically in one step.
How is this achieved in Houdini?
P.S. Not sure if I asked this question before.
Carve SOP Power User?
14494 13 4- markerline
- Member
- 245 posts
- Joined: Sept. 2008
- Offline
- vleermeneer
- Member
- 245 posts
- Joined: Sept. 2011
- Offline
- fsimerey
- Member
- 279 posts
- Joined: Dec. 2009
- Offline
I'm not front of houdini, but the expression point() would do this for one point in first U and a another point in Second U.
The points must have an UV attribute or be a nurbs.
Somethis like this:
point("path_to_geo_node", point_number, “uv”, 0)
if you want the input node:
point(opinputpath(“.”, 0), point_number, “uv”, 0)
The points must have an UV attribute or be a nurbs.
Somethis like this:
point("path_to_geo_node", point_number, “uv”, 0)
if you want the input node:
point(opinputpath(“.”, 0), point_number, “uv”, 0)
- markerline
- Member
- 245 posts
- Joined: Sept. 2008
- Offline
Hi. I've tried using the point expression as well as adding a uv texture attribute with the Point SOP and using the points expression where you can feed in custom attributes. However both attempts resulted in 0. When I fed it “Pw” as the source instead of P (which usually returns XYZ values) I got the carve to produce a 1 instead of a 0 but I really don't know what the value of the Pw returned. I tried to copy this into a transform SOP but the interface failed and I couldn't see the value of my expression. Some display error with the Transform SOP. (I don't think point expression allows for other attributes besides Cd, N, P, and Pw)
As far as VOP Sop is concerned I couldn't find how to get a uv coordinate from the 2 Vex operators inside which were “global1” and output1 . I tried to call up a ptexture1 vex operator which has U coordinate and V coordinate inside the input but only puts out a texture color attribute. The output1 node does not have a place to input UVW coordinates and I can't remember how to add input attributes at the moment. I'm not that familiar with Vex.
Thank you both for replying. Any additional ideas?
As far as VOP Sop is concerned I couldn't find how to get a uv coordinate from the 2 Vex operators inside which were “global1” and output1 . I tried to call up a ptexture1 vex operator which has U coordinate and V coordinate inside the input but only puts out a texture color attribute. The output1 node does not have a place to input UVW coordinates and I can't remember how to add input attributes at the moment. I'm not that familiar with Vex.
Thank you both for replying. Any additional ideas?
- fsimerey
- Member
- 279 posts
- Joined: Dec. 2009
- Offline
- fsimerey
- Member
- 279 posts
- Joined: Dec. 2009
- Offline
- markerline
- Member
- 245 posts
- Joined: Sept. 2008
- Offline
Thanks for communicating with SideFX about this. But I hope they look at this post again before determining that it's a bug.
You see, In Maya you have CV's which are Control Vertices determined by UV and you have Edit Points which are actual cartesian coordinate points on the curve. My workflow in Maya was to select the Edit Points and break the curve at those locations rather than at the Control Vertices.
I suspect that the Carve Sop only cuts on control vertices (although I did notice a difference in carves when comparing the same values output by the expression versus manually entering the exact same values without an expression).
What we need is a tool that cuts on Edit Points, the cartesian coordinates of the curve, so that you can actually put in a point expression such as:
point(“../previous_sop”,10,“P”,0) so that you are getting the X position of the point number 10 on the curve. That point on the curve will be different than the point CV number 10 which lies off the curve.
At least that is what I think is going on under the hood.
Thanks again for your reply and for your example.
You see, In Maya you have CV's which are Control Vertices determined by UV and you have Edit Points which are actual cartesian coordinate points on the curve. My workflow in Maya was to select the Edit Points and break the curve at those locations rather than at the Control Vertices.
I suspect that the Carve Sop only cuts on control vertices (although I did notice a difference in carves when comparing the same values output by the expression versus manually entering the exact same values without an expression).
What we need is a tool that cuts on Edit Points, the cartesian coordinates of the curve, so that you can actually put in a point expression such as:
point(“../previous_sop”,10,“P”,0) so that you are getting the X position of the point number 10 on the curve. That point on the curve will be different than the point CV number 10 which lies off the curve.
At least that is what I think is going on under the hood.
Thanks again for your reply and for your example.
- stjohn
- Member
- 140 posts
- Joined: July 2005
- Offline
- stjohn
- Member
- 140 posts
- Joined: July 2005
- Offline
- markerline
- Member
- 245 posts
- Joined: Sept. 2008
- Offline
- markerline
- Member
- 245 posts
- Joined: Sept. 2008
- Offline
- animatrix_
- Member
- 4672 posts
- Joined: Feb. 2012
- Offline
How would a point group work though? Primitive group isolates the curves/polygons you want to carve.
Senior FX TD @ Industrial Light & Magic
Get to the NEXT level in Houdini & VEX with Pragmatic VEX! [www.pragmatic-vfx.com]
youtube.com/@pragmaticvfx | patreon.com/animatrix | pragmaticvfx.gumroad.com
Get to the NEXT level in Houdini & VEX with Pragmatic VEX! [www.pragmatic-vfx.com]
youtube.com/@pragmaticvfx | patreon.com/animatrix | pragmaticvfx.gumroad.com
- markerline
- Member
- 245 posts
- Joined: Sept. 2008
- Offline
- digitallysane
- Member
- 1192 posts
- Joined: July 2005
- Offline
fsimereyThat is not a bug.
Submitted as bug.
SESI support is looking for this. Support Ticket: #14568
Waiting a reply from SESI but not actually define as bug.
UV in Carve SOP understanding means the parametric u and v of a spline or NURBS surface. It has nothing to do with Texture coordinates (UVs).
So a point's U and V texture coordinates would in most cases have no connection with that point U and V parametric location on a spline surface.
If the surface is actually of Mesh type and you apply Row and Columns Texture UVs using the Texture SOP, then the two (parametric UV and texture UV) might be the same.
Some expressions that work with parametric UV (I doubt they'll help here):
http://www.sidefx.com/docs/houdini12.5/expressions/uvdist [sidefx.com]
http://www.sidefx.com/docs/houdini12.5/expressions/xyzdist [sidefx.com]
http://www.sidefx.com/docs/houdini12.5/expressions/primdist [sidefx.com]
http://www.sidefx.com/docs/houdini12.5/expressions/primuv [sidefx.com]
Dragos
-
- Quick Links