Jump to content

Search the Community

Showing results for tags 'wrangle'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • General
    • Lounge/General chat
    • Education
    • Jobs
  • Houdini
    • General Houdini Questions
    • Effects
    • Modeling
    • Animation & Rigging
    • Lighting & Rendering
    • Compositing
    • Games
    • Tools (HDA's etc.)
  • Coders Corner
    • HDK : Houdini Development Kit
    • Scripting
    • Shaders
  • Art and Challenges
    • Finished Work
    • Work in Progress
    • VFX Challenge
    • Effects Challenge Archive
  • Systems and Other Applications
    • Other 3d Packages
    • Operating Systems
    • Hardware
    • Pipeline
  • od|force
    • Feedback, Suggestions, Bugs

Found 45 results

  1. POP Wrangle Group

    Hello, I want a second age ("myage") for particles, when they are in the group "active". Very simple? But it don't work
  2. I have a curve where I used the parallel transport algorithm to transport the normal along the curve and then I use this curve as a follow curve fora bones chain. My question now is how can I setup up the twist along the bone chain and also make it twist beyond 180 degrees without flipping? (see attached file below) any guidance and examples will be greatly appreciated. Thanks. parallel_transport_curve_framing_03.hip
  3. Hi people, I got some problem with color loss in my balls array attached to point box. Everything is working as intended until I transform my array to RBD Object. In my scene I would like to have balls bounce around and collide with everything but I would like to have some materials and distribute them randomly on them as well. Everything is working but color is lost inside Assemble node at the end in Attribute Wrangle node called : add_name_attribute. I have no idea what happens but this node is making additional groups from my balls and in the end there are many groups which I don't need. All balls are turning grey in viewport as well. If you could have a look I would be grateful. ajz3d_randomize_materials2.hipnc
  4. wrangle nodes pragma?

    Does anyone knows if it's possible to define the UI of Wrangle nodes using some kind of vex #pragma?
  5. [SOLVED] VEX in Volume Wrangle

    Hi all, I'm trying to write some vex in a volume wrangle but I'm really struggling atm, not sure if the problem is the syntax or my inexperience with voxels. I have a volume which I set up with random densities and then, in the next step, the density of a voxel should be affected by the surrounding voxels. I've done the first step but can't figure out how to access the "closest neighbour voxels". I guess they have some sort of index but can't figure out which voxel has which index or if I should access them by their position. Tried to use the function volumeindex() to find index and volumesample() to take a sample from a position but both only returns 0 so I'm obviously doing something wrong. I wrote it like this: vector pos = {2, 2, 2}; float temp = volumeindex(0, "@A", pos); printf("%f\n", temp); @A += temp; It doesn't seem to matter what position I use for the vector pos, the functions always return 0 either way. So if someone knows anything about this it would be great volumeRandom.hipnc
  6. Hello there! Kinda new around here; think this is my first post, but lurking in the shadows and reading a lot this forum has been a great resource in learning the tools of the trade with Houdini lately. Well, straight to the point; I'm wondering if it's possible to make a parameter fetch a value from a created attribute. Can't post my network right now, but imagine; I have a IsoOffset, which creates a volume from a Boolean to be read by a Measure node; After that I promote the created Primitive attribute to a Detail attribute and Scatter some points on it. After this, a PopNetwork is created and I want it to emmit from the created points; but I need it to stop when the Volume Detail attribute is over a certain value; I'm wondering if via Wrangle I can do this with an If function, but then again, how would I transfer the final variable value to the Birth Rate Parameter in the Pop Source? I thought of something like this in the Parameter Field `detail("obj/Geometry1/attribpromote1", "VolCut", 0)` but it doesn't seem to work. Any ideas? Kind of noobish, so don't judge me hard on this! Cheers and thanks in advance!
  7. Hey guys, I'm doing a blood seeping/absorbed on a tissue. Have done one with AttribWrangle & Solver based of a tutorial. The logic is a. points selection, b. blood starts to grow from selected points by choosing neighbors While it works with a point selection at the Solver StartFrame, I would like to improve the point selection step, with a dynamic selection like where a newer bullet[animated sphere] touching the surface should start spawning the blood. New to Solver & need your help on this. Thanks in Advance Arun bloodSeep_v01.hipnc
  8. Hello, I have decided to study more Houdini. As i want to expand my knowledge regarding Houdini and not limit myself only with shelf tools. VEX expressions what tutorials or educational materials would you recomend and in what order? Note (need only up to date tutorials as out of date tutorials where they use nodes that are obsolite etc will not help but only create more confusion). Also what tutorials to go over regarding wrangle nodes. Best regards Tanel
  9. Silly question, but total wrangle noob here... I want to set random grey scale values on points, not sure if I should be using @id or @ptnum and how the expression would look? TIA
  10. VDB to "tidy" geo

    Hi Been watching the Hive Siggraph vids specifically the procedural game level building At 40 mins 28 sec in there is a corridor that looks interesting and i can replicate a lot of it (because of the way it is described) but i cant understand how the vdb is so clean. On the left it is just possible to see a convert vdb node connected to what looks like a wrangle of some kind? Does anyone have some insight into what would be happening in this wrangle to get such clean geo? I have no idea... Thanks for any input Dave
  11. Hey all! I'm pretty stuck in a rut trying to think my way through what I want to accomplish with a brick tool I've been working on. Currently I can feed in a box, tube, or an L-shaped box that I've modeled and I can get well stacked bricks around the perimeter. What I'm stuck on is then taking this and adding in holes for windows/doors/etc. Similar to what is seen here: https://letshoudini.wordpress.com/2016/06/19/031-procedural-modeling-for-destruction/ What I want to be able to do is copy a pre-fractured brick to the points, like the simple box I have now in the attached hip file, with rotations to help vary the layout a bit. Thus, should I boolean out holes from the mesh after generating bricks? Maybe taking into account where windows are (will be) and then not placing brick points there? (then I would have to have half bricks to copy). Not sure the booleans would behave as I want to be able to instance high detail geo to the pieces after simulation. The solution in the link looks to be a boolean as the simulation then only runs with simple bricks clustered to add some interest to their breakup (https://letshoudini.wordpress.com/2016/09/18/037-earthquake-building-collapse-rd-01/). I don't think I'm seeing this problem clearly right now and would really appreciate some nudges in a direction to help grease the logic wheels! Hartman- BuildingForDestruction.hiplc
  12. Hey guys, sorry for my english There is a way in Houdini to detect the collision and have a organic style deformation without dynamics to avoid the intersection of the meshes? I have some geometry groups (tentacles based on curves) in a single object, so, I thinks is possible with volumes and a vex expression with if and else, but I'm not so good with vex, i'm still learning. So, using a foreach loop , maybe converting the mesh into volumes and use a scatter to have the surface and inside points to detect their position, how can I import in a wrangle the groups and their points info to create this type of action? I know the message but i don't know how to write it, some ideas? Thank you
  13. Point Wrangle inside foreach loop

    I'll get right to it. I am running a foreach loop on a bunch of prims. For each prim I scatter a number of points. Still within the foreach loop, I run a point wrangle on those points. In the wrangle I run intersect on each of the points and if one hits I want to set an attribute on the prim (foreach loop peice) that the points were scattered on. In the end I don't need the scattered points, I just need the prims output with the attribute @keepage. What I cant figure out is how to set up the forloop so that this works.
  14. Hello! Sory for my English I'm trying create geometry with AttribWrangle node in Detail mode. I use addpoint, addvertex and addprim nodes. When I created some points how could I get access to them into the node? For example, I created point pnt0 = {0,0,0,}. And now I want to create point pnt1 which is close to pnt0: int X = 3; int pnt0 = addpoint(0, set(0,0,0)); int pnt1 = addpoint(0, set()); - and here I want to get position of the first point and add X to each coordinates. Is it possible?
  15. Hello guys. Could anyone help me with syntax. Im relatively new to VEX. I need to get total number of points of geometry that connected to second input of wrangle. I tried something like int maxp = @opinput2_numpt; but it always returns 0. Would appreciate help.
  16. Hey guys. I'm pretty new to the houdini world, and I've been experimenting a lot of things. Is there a way to get the RGB values of scattered points using attrib wrangle? Im not too familiar with the VEX syntax, so Im having a hard time figuring it out. I have random colours signed to a scatter node and some geometry copied on to the points using a copy node. I want to limit scatter the geometry based on the colour of the scattered point. Thanks!
  17. Attribute randomize issue

    I just installed Houdini 15.5.683 for Ubuntu 16.04 and I gave a quick look to see how different was from windows version. The first issue that I encountered is with attribute-randomize sop, that gives me a strange error (VEX related). I tried the same setup in windows and everything works smooth! maybe is a ubuntu specific bug? there's someway to fix it, because this sop is essential to me. thanks in advance ps. I navigated inside the attribute randomize sop to find the actual line error.
  18. Hi, Is there an possibility to have @ working to create write attributes in a vex function? Something similar to the following function void test() { i@test_attrib = 10; } The reason I want to avoid setattrib is that it is much slower as implementation. Are there any other idea's? does the *.vcc compiler optimize the setting of attributes? Cheers
  19. Hello, Trying to read a vector array from another point at a certain index. From my understanding of Houdini something like this should work. vector tempArray[] = point(0,"vectorArrayAttrib",pointToReadFrom); vector v = tempArray[index]; Unfortunately this method is returning an empty array from the point() function. If this is not the right way to go about doing this please let me know. Any help welcomed. Thanks.
  20. Hello,I'm attempting to create the slitscan/timeshift effect. I'm creating a vector array in a for loop, each loop has an attrib from map and a wrangle that appends Cd to a vector array. It works when the attrib from map is always reading from the same file. When I change the attrib from map file read expression to anything that has to do with $F or the meta nodes iteration Houdini crashes. I have a test scene that has documentation and even nodes setup to create test frames to work with.If it is a matter of the way that multiple files cannot be read at once please let me know. If someone knows of a better way to read from multiple files at once and/or achieve this effect please let me know. I'm aware that after effects has this effect and uses gradients to determine which frame to look up color from. While that method is great, I'd like to be able to write the gradients/lookups in vex to achieve results. Any help greatly appreciated. -T concept_025_slitScan_v001.hiplc
  21. Temporary variables in VEX Help

    Hi I'm new to this wrangle node programming, I've been busting my head over why this doesn't work for three days, it's so simple therefor i must be missing out on some general vex concepts. If anyone can please point me in the right direction that would be greatly appritiated. I have a bunch of points on a grid and their moving up and down via noise. I am trying to set up a point attribute that has a value of 1 when a point if moving up (positivly in the Y axis) and a value of 0 when a point is moving down (negativly in the Y axis). This attribute is called Direction, I'm computing the logic on temporary VEX variables and then writing them out to the attributes. Here's how it looks like : // 0 is going down, 1 is going up, -1 means the point has no direction // on the first frame they have no direction so the points just take their current heights so they can use them for comparison on the second and every other frame int temporary_Direction; float temporary_Previous_Frame_Height; if(@Frame == 1) { temporary_Direction = -1; temporary_Previous_Frame_Height = @P.y; } else { temporary_Direction = @Direction; // ------------> this is where the problem is (this is here so that the temporary variable get's the value of the currently proccesing point every frame) temporary_Previous_Frame_Height = @P.y; if(temporary_Direction == -1) // If the point has no direction { if(temporary_Previous_Frame_Height < v@P.y) // If it's going up { temporary_Direction = 1; temporary_Previous_Frame_Height = v@P.y; } if(temporary_Previous_Frame_Height > v@P.y) // If it's going down { temporary_Direction = 0; temporary_Previous_Frame_Height = v@P.y; } } } // Out_Values i@Direction = temporary_Direction; f@Previous_Frame_Height = temporary_Previous_Frame_Height; // Out_Values The problem here seems to be when I declare "temporary_Direction = @Direction", for some reason on the second frame when I read @Direction the value wich is given to temporary_Direction is 0 instead of -1 wich was given to every @Direction on the first frame. Temporary_Previous_Frame_Height updates just fine but temporary_Direction doesnt. Also writing "if(temporary_Direction == -1)" doesnt seem to work either. Is my thought process even slightly right here, what am i doing wrong, are temporary variables created in vex something that exist globally and in order to use them per point we need to read each point's values or are temporary variables something that exist for every point. Also why do i have to give values to all attributes every single frame or else they will reset to 0 (hense the Out_Values section). //////////////////////////// Update Thank you everyone for replying. I've tried out the time shift sop and it work's fine now( I dont even need the Previous_Frame_Height attribute anymore). I've updated the main post with the original hip file and the one with the time shift sop. Learning about the time shift sop is great, but i would still like to improve my thought process on writing code. It would be greatly appritiated if someone can take a look at the original hip file and possibly shed some light on the problem. I've added notes inside the original hip file for clarity. Any help would be appritiated Thanks in advance Original.hip Time-Shift SOP.hip
  22. How to write for loop in vex

    Hello guys, I know how for loop works in c++ but i am not able to write in vex .Can anyone explain me how to write for loop with simple point and color example . Thank you
  23. Hi, is it possible to access the points I create in a wrangle with the addpoint function in the same wrangle? I have an attribute wrangle that only runs once. Within that wrangle I made a for loop where I create points. Then I want search for neigbouring points within the points I created so far in the same loop. I could store the positions in array and loop through the array of the positions I stored so far within the loop, but that can get pretty slow. I hope I explained this well anough. I there any way to do this or should I have another approach for this?
  24. Custom Group SOP in VEX

    Hi guys, here are the files I used for the last Vancouver Houdini User Group in case anyone wants to take a look. My presentation was about writing the Group SOP in VEX and trying to optimize it. I wrote everything in a wrangle, and it works great as a preset in a point/prim wrangle. I also made a Digital Asset, although it's not a VEX operator because I couldn't figure out how to make it work purely in VEX because I need to use the group bindings from the Wrangle and I'm not sure how to implement that in VEX. Anyways, the OTL is just the wrangle with the parameters promoted. In the presentation file you can take a look at the speed tests of the Group VEX vs the Group SOP. The difference in performance is pretty similar if you have a few points/prims, but once you go above 1 million the performance difference really starts to kick in. The Group VEX becomes exponentially faster than the Group SOP the more points you have. The difference can really be seen when you group by object and when you group by volume. I also made those 2 modes work with primitives. Here are the files in case anyone wants to take a look at the code. Feedback is greatly appreciated! group_vex_jeronimo_maggi.hipnc vhug_presentation_jeronimo_maggi.hipnc group_vex_jm.hdanc custom_group_sop.vfl
  25. Hi Pretty much the title In VOP I can use the "Import Primitive Attribute" node to do it, but I'm not sure what's the recommended way to do the same in a wrangle. I noticed that the IPA node is actually just a snippet, which obviously answers my question, but I was wondering if there was a more straightforward (a.k.a shorter) way to do the same Thanks EDIT Someone answered my question and apparently just using @primnum works in wrangles. However, now I'm more confused. I created a sphere and put a f@test = @primnum; in a point wrangle, the results are some numbers, but what do these numbers refere to?
×