Jump to content

konstantin magnus

Members
  • Posts

    1,178
  • Joined

  • Last visited

  • Days Won

    205

konstantin magnus last won the day on March 29

konstantin magnus had the most liked content!

Contact Methods

  • Website URL
    www.konstantinmagnus.de/

Personal Information

  • Name
    Konstantin Magnus
  • Location
    Germany

Recent Profile Visitors

23,798 profile views

konstantin magnus's Achievements

Collaborator

Collaborator (7/14)

  • Well Followed Rare
  • Conversation Starter Rare
  • Posting Machine Rare
  • Collaborator Rare
  • First Post Rare

Recent Badges

1.3k

Reputation

  1. Nowadays you would rather use the group expand node, though: https://www.sidefx.com/docs/houdini/nodes/sop/groupexpand.html group_expand.hip
  2. Small update on minimal surfaces using the poisson equation and some more modern nodes. minimal_surface.hip
  3. Here is an approach combining resample nodes with sweep, noise and polycut. The VEXpression offsets the noise for each line. morse.hip
  4. The UV layout-node lines up the books. Just disable the axis alignment and pack into UDIM tiles. book_shelf.hip books_shelf_3d_od.hip
  5. Hi rev, you could paint on the large terrain and transfer its mask to the smaller tiles using a volume wrangle. write_mult_volumes.hip
  6. Maybe this helps: https://procegen.konstantinmagnus.de/wires-connecting-objects
  7. https://procegen.konstantinmagnus.de/circuit-networks
  8. Or you use VEX to apply UV coordinates onto the roof: // VERTEX WRANGLE float s = ch('uv_scale'); vector up = {0,1,0}; vector nml = normalize(prim_normal(0, i@primnum, 0.0, 0.0)); vector tang = normalize(up - dot(nml, up) * nml); vector bitang = normalize(cross(-nml, tang)); vector pos_rel = v@P - prim(0, 'P', i@primnum); float u = dot(pos_rel, bitang); float v = dot(pos_rel, tang); v@uv = set(u, v, 0.0) * s; Align each polygon to the bottom left corner of the UV space: // VERTEX WRANGLE string geo = geounwrap(0, 'uv'); vector size = getbbox_min(geo, itoa(i@primnum)); v@uv -= size; roof.hip
  9. Hi @lacer8, you may want to look into @animatrix' setup here: https://www.sidefx.com/forum/topic/84345/#post-364636
  10. @millsy Check this to take it further: https://procegen.konstantinmagnus.de/wicker-basket
  11. Hi @millsy, maybe start with sweeps as they provide output attributes like primcol to later create patterns. straw_weave.hip
  12. Did you model these procedurally? If so, there are probably ways of assigning UVs while modeling and not after.
  13. It's usually best to create UVs on the fly and not just at the end. For this, you can use the sweep node for pretty much any building part and enable its UV outputs. Additionally other output attributes such as primrow and ptcol can be useful for selecting patterns next, ie. i@primcol%3==1
  14. Hi @GlennimusPrime, you could measure and over time remap the surface distance from the mask. attribute_spread_KM.hiplc
  15. This could be due to the internal order of the point group. try shuffling starting points by randomly picking a point number out of the array: int seed = chi('seed'); int pts[] = expandpointgroup(0, 'start'); int iter = detail(1, 'iteration', 0); int pick = pts[int(rand(iter, seed) * len(pts))]; i@group_boundary = i@ptnum == pick; infection_multiple_01.hip
×
×
  • Create New...