Jump to content


  • Content count

  • Joined

  • Last visited

Community Reputation

0 Neutral

About magicU

  • Rank

Personal Information

  • Name
  • Location

Recent Profile Visitors

671 profile views
  1. constraint object to animated

    Ha! After spending two days fighting with Houdini to make this work, then giving up this afternoon & doing it all with Maya's ncloth it's heartening to see this isn't actually too difficult to get working after all. Now do I go back to Houdini in the morning? hahaha Thanks Tomas
  2. UVs and Attribute Interpolate

    Thanks 6ril, I'll check the polyextrude out again (I was previously trying to use local frame) In any case, I've sorted out the UVs, it was way simpler than I expected - I ended up running the animated parts through a vertex VOP, made an xyzdist node & popped that created the sourceprim & sourceprimuvw attributes I needed.
  3. Hi all... I've got a shape with some animated deformation & I've got wires sprouting off the surface, simulating happily. Now I've extruded these wires to achieve a sort of tinsle/fur effect. With the help of my work colleague I've managed to normalise my UVs so that each "fur" strand occupies the whole UV 0-1 space. However, as with most simulated things I need to bake this to avoid texture swimming and I'd like to use attribute-interpolate to lock this UV layout throughout the simulation now & I'm struggling to get the node working. (Said colleague has gone on leave now.... *shakes fist*) Could anyone take a look at my file or point me in the right direction? I'm assuming I want to interpolate to vertices & use vertex numbers and weights... and I'm assuming I just need to tell it that vertex 1 is vertex 1, with a weight of 1? Or do I? Also what is the deal with the polyextrude SOP? I just can't seem to get it extruding edges in a predictable and consistent direction, no matter the normals that I feed it! Many thanks fur_doughnut_001.hip
  4. Thanks for the speedy help Tomas - I'll start dissecting what you've done. Good call on the lines, I'll try to implement that too! Edit - It all works really well Tomas! I think the wrangle is actually easier to read than the VOP network, but that might just be me.. I do have a better understanding of the For loop within VOPs now though. Thanks again.
  5. Hi all, I made a quick "cover surface with single-square lego pieces" for a character at work and I wanted to develop it a bit more now that I have some downtime. The idea is to have any surface, static or animated covered in blocks, with some height variation here and there. Initially I was dealing with the height in a rather manual fashion, reading in a texture height map and manually selecting grey value ranges with group nodes to separate out each level before displacing them along a normal. These points then all got merged back together before being plugged into my final Copy node.. The results aren't bad, albeit a bit slow (see my screenshot), but I'd like to be able to choose how many levels I want with a slider & have this all filter through nicely. Here's what I have figured out - load a height map texture in a vop, with a bit of fit range, divisions and value flooring assign each point a "height level" attribute. Ascertain max height level value (I just promoted my point attr to a detail attr using a max filter, or i suppose i could just take my input value!). Now .. what I'm a bit stuck with is how to do what I was doing before - selecting all the points within certain ranges, displacing them upward...selecting next lot, displacing them up... and then finally merging my points back into one node before Copying! I'm sure its because I'm not thinking in a Houdini way still (Maya user here). What are my options for looping through? Or is my approach not the most efficient? I started looking at the "add point" node in Vops, is this a good road to take? The For loop structure doesn't work how I imagined (for i=0; i<max height level; i++ <-being able to do this would be amazing...I know it's possible......somehow..) Oh - and thanks in advance for any pointers!
  6. Amazing! Thanks Matt. I just knew there'd be a function somewhere to access that info. VEX has suddenly jumped up a few places on my to-learn list... though I think the new un-nested loops in VOPS do help with reading "code" a bit..
  7. Hi all, I've just been diving into learning about Point Clouds and I've been trying to dissect examples to figure out what's going on.. I've been looking through Matt Estella's "Create Edges with Vops" file: http://www.tokeru.com/cgwiki/?title=Houdini#Create_edges_with_vops and whilst I'm able to replicate the effect, I'm wondering if it's possible at all to access the points on the floor that are being connected to the floating soot points. What I'd like to do is make the ones on the floor which are being connected, to change colour to red, but then go back to being black once disconnected. So far, I'm thinking that in the current setup this can't be done,since it's the soot points that are being queried? A thought just popped into my head- Would the way to go about it be to scrap the initial group check, sampling everything and only checking for groups later when calling add-primitive & add-vertex? Thanks for any pointers...
  8. geometry to slice then extrude the slices for thickness

    Ah! This is so obvious and makes complete sense. *facepalm* Thank you!
  9. geometry to slice then extrude the slices for thickness

    Sorry for digging up this old thread, but it made sense not to make a new one! In the clip node, the distance expression is : bbox(opinputpath("..",0),D_YSIZE)/(1+ch("../numrange2"))*stamp("..",chs("../forstamp"),0) something I'm having a little difficulty wrapping my head around is how the stamp part of the expression makes this all work? I get that we're taking the height of the object, then dividing by the number of slices (numrange2).. Then the stamp function takes the "forstamp" variable, which says how far up or down the chunk of the object is to clip... The part I don't quite get is how it knows to keep the already-clipped parts disconnected from the current part being clipped, since the clip only retains above OR below the plane.. I think I might be misunderstanding what the forstamp value holds as info... OR is it the "each" node handling this part??
  10. Thanks all, I ended up stumbling across the point() function, but got confused as to why I could skip out passing the "point_number" value mentioned in the docs. I ended up using this code (Tomas, thanks, I quite like the shorthand of using 1, instead!): @N=point(@OpInput2, "P", @ptnum)-@P ; The docs function - point(surface_node, point_number, attribute, index)
  11. Hi all, long time lurker, first time poster..I'm trying to "convert" a Point SOP expression of $NX= $TX2-$TX into Point Wrangle VEX terms where there are 2 inputs to the Point SOP. I couldn't find any doc references to accessing the other inputs of the Point Wrangle and was hoping someone could point me in the right direction? I thought @P1.x-@P.x might work...but to no avail! Even the Ari Danesh H12.5 wrangle tutorial doesn't seem to address multiple inputs... thanks!