Jump to content


  • Content count

  • Donations

    0.00 CAD 
  • Joined

  • Last visited

  • Days Won


Everything posted by AntoineSfx

  1. Curve SOP and relative coordinates

    This is fixed in Houdini 18.0.460 (basically next daily build) "The Curve SOP will now handle multiple relative references in a sensible fashion."
  2. Curve SOP and relative coordinates

    Here is the relevant portion of the documentation: Coordinates Normally you will use this operator in the viewer and simply click to indicate coordinates; however, if you need to you can also use a space-separated list of coordinates in this field to specify points. Coordinates can be specified in the following formats: x,y,z Absolute 3D coordinates, with a default weight of 1. x,y,z,w Absolute 3D coordinates and weighting factor. @x,y,z 3D coordinates relative to the previous point in the list. My coordinate list: 0,0,0 -1,1,0 @2,0,0 @-1,-1,0 2,-2,0 @0,-1,0 @-2,0,0 Can someone confirm that it's not working as expected when two relative coordinates are used in a row ? It looks like the algorithm is ignoring the @ sign in the previous coordinates when computing a relative coordinate, which is kind of ironic.
  3. in Attribute Wrangle2, set Run Over to Points, because at this point, your're supposed to have packed primitives, so you're going to manipulate the primitives as if they were points.
  4. So I have a few textures for a hardwood floor, and the textures align nicely on a grid object, but it's still obvious that it's not a seamless texture. With the correct number of rows and columns set, I have one primitive per apparent plank. Some planks may have a seam somewhere but it's not too important right now. Now how do I shuffle the primitives ? I'm looking for the most Houdini way to do it.. Either actually shuffle the primitives, or copy the uv from a random primitive, which should look the same.
  5. Curve SOP and relative coordinates

    I think the workaround is to file a bug report and wait for the fix... Which I'm doing right now.
  6. planar polyextrude for polygons

    Somehow I wasn't aware we could already polyextrude edges.. It looks like it's numerically unstable though, slightly changing values upstream sometimes has a large impact one the result though. Thanks.
  7. planar polyextrude for polygons

    Starting from the large rectangle, how may I achieve the same result ? In this case, I started with a box, and used polyextrude and transform extruded front / scale in Y so that it remains planar, and kept the top face How can I do this directly in 2d ?
  8. Hi there Any suggestions on how I could create a globe which would allow me to move countries on the surface of the Earth ? I was thinking of something like 1/ import country borders as polygons in some representation 2/ create one sphere per country 3/ merge the whole thing then somehow I would need a manipulator that would find the country under the mouse pointer and allow me to drag it on the Earth Thoughts ?
  9. Discretize 2d shapes

    Given a shape, how could you process it to make it a good starting point for copying those various elements at its points ? At first it looked like something related to the Bresenham algorithm, but neighbor pieces have to have one common edge.. The anti aliasing algorithm avoids such situation, so it won't work I wonder what other mathematical problem this is related to.Could it be as simple as a snap (fuse), to a grid, then take care of the 45 degree edges ? I'm trying to have a polygon that is made only of segments oriented along one axis only at a time, and is an approximation of the initial geometry.
  10. How can I more or less realistically move a 4 wheeled vehicle, in particular a bus, along a path ? Example of what I'm trying to avoid at 0:57 (the rear wheels on the bus are moving sideways) Do I have to implement some of the elements of a car steering and simulate it somehow, or could I achieve a good enough result by computing the path of another point on the vehicle starting from the path I'm trying to follow ?
  11. 3D to 2D(UV) and back to 3D

    can't you just flatten the geometry before converting it back from "flat" (pseudo uv) to P, storing the elevation of the points which are no longer in the plane in an attribute, and move the points away from the surface along @N multiplied by that elevation attribute and some correction factor (because of changes in scale..) once you' re back in 3d space ?
  12. Primitive counter on a parameter interface?

    Add an integer parameter at Object level in your geometry, then use an expression that points to the quantity you want to display Example npoints("pack1/") pack1 being the name of a node in your geometry network In your network, you can use connectivity (primitives) and attribute promote (primitive -> detail (max) ) to compute the number of objects for example you can refer to said quantity with detail("attribpromote1/","class",0)+1 Click on the label once at object level to have the text box display the value instead of the formula.
  13. how to Clone edges on primitive ?

    you could, but you would have a hole (the 18/9/26 triangle), and possibly problems downstream (for example, if you subdivide the geo later) Even if the hole if zero area, the geometry will be dirty. You will have problems at rendering because there is a discontinuity between the normals on either side of the " edge " (just two edges which happen to be at the same place) Primitives are made of vertices, and those vertices are shared, which makes the geometry connected.
  14. Similar select

    Can you provide a screen cap of what it looks like in Maya, especially the topology of the source and target ? Or.. emulate it manually in Houdini (i.e draw the groups by hand) and provide a hip file.
  15. Connecting 2 set of points one by one

    It depends on whether the pairing information exists or not. In your case, it's trivial because each point should be connected to another point which point number is equal to @ptnum+27 Use: Add SOP / Polygons / By Group / Skip Every Nth point / set N to 27 If the pairing information is gone, then it's more work. It would be something like sorting each set of points with respect to their angle (see atan2) relative the centroid, then find the pairing shift (see sort / Point sort / shift) which will minimize the overall edge length.
  16. distribute edges on circle

    I'd love to see a robust solution to " a random edge selection".. I think I've seen that before with a conversion to line primitives with ConvertLines / Facet unique points, then a random selection among those primitives, and transfer back that subset as an edge group to the original geo, but I can't find a way to do this.
  17. distribute edges on circle

    This will merge two random adjacent primitives after each iteration. deleteEdges.hipnc
  18. distribute edges on circle

    Do you actually want / need this in VEX, or do you just want the end result (using just SOP)
  19. Removing Points on corners

    You have almost duplicate points in Add1 because of Facet1 (unique points) The bounding object in group1/ input2 is made of non connected and overlapping geometries. Each sphere is present twice, and it's causing problems in the algorithm they're using to test if a point is inside a bounding object or not. See https://en.wikipedia.org/wiki/Point_in_polygon for the reason why two overlapping spheres will cause points at their intersection being incorrectly seen as outside. The VDB From Poly is "solving" this by merging the two identical spheres together and makes the geometry nice and clean.
  20. Removing Points on corners

    I didn't find any references in the doc on the subject of how the attributes or group are handled during a resample. I know the attributes are linearly interpolated, but it's unclear how the groups are interpolated, whether in resample or subdivide. However, it can be emulated using a float attribute.. FWIW: the point groups are correctly interpolated in "Treat polygon As: Straight Edges" mode, and not in the two other ones (Subdivision, Interpolate)
  21. Removing Points on corners

    The spheres / bounding objects is not necessary anyway. Just group the corner points at a point in your workflow when you have just them, then group transfer said group to the refined geo. Then groupcombine to invert the group and you have the notcorners group..
  22. How to remesh to match the uv directions ?

    So I did it this way: I attributed swapped uv and P, removed the internal shared edges, then brickered the remaining polygon. After a uvsample to get the exact point coordinates, I restored P by swapping back P and uv I'm happy with the result, though I don't know how stable it is. uv.remesh.hipnc
  23. The uv have been generated by a UV Flatten. Now would like the geometry to look more like the checker from QuickShade. I can't think of anything obvious to achieve this.
  24. UV for a polyfill quadrilateral grid

    I have a curve that needs to be polyfilled using a quadrilateral grid, but I don't know the dimensions of the resulting grid. I'm using the uv on the resulting patch to copy some geometry on it, and I need to set the uv along the rows and columns. It is guaranteed to be a NxM grid, but I don't see a clean way to compute N and M from the geometrty. In my tests, if the dimensions are fixed or can be predicted, I was able to Match Topology the patch with a known grid which has the UV set the way I want; then I copy the UV with Attribute Copy. But in general, I can't find a way to do it. Any ideas ?
  25. Leaves on objects

    *If* you're not too comfortable with the vector math, you can use this simpler wrangle, after setting the normals on the sphere v@up=set(0,1,0); also, you can add a transform on the leaves (rotate x by 90 + some amount) to have the leave slightly rotate away from the sphere. The orientation is totally defined by two vectors (N and up), and you can easily set them explicitly (if you want to point at something), but there are many ways to set the orientation https://www.sidefx.com/docs/houdini/copy/instanceattrs.html Thomas' answer is better if you need more control, or for example if you need to change @orient over time, because quaternions are better at interpolating the orientation in 3d.