Welcome to od|forum

Register now to gain access to all of our features. Once registered and logged in, you will be able to contribute to this site by submitting your own content or replying to existing content. You'll be able to customize your profile, receive reputation points as a reward for submitting content, while also communicating with other members via your own private inbox, plus much more! This message will be removed once you have signed in.

Search the Community

Showing results for tags 'vex'.



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
  • 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 215 results

  1. Suppose I have a position (e.g. [100,200,300]) and directional vector (e.g. [1,0,0]), is there a way in VEX to fire a line trace/ray from that point along that vector and get the position of the first surface primitive that's hit?
  2. Hello, I'm a newbie with vex and I'm trying to create an array of structs. In my wrangle node I defined the struct in the outer code section as suggested here my struct looks like this: struct node { int pt; int nbrs[ ]; } In my code I later declare node nd; node array[ ]; I manage to initialise the nd variable normally. Then I tried the following int pt = nd.pt; //works fine int nbrs[] = nd.nbrs; //works fine array[0] = nd; //seems to work fine pt = array[0].pt; //nope nd = array[0]; //nope By doesn't work I mean that the node turns red saying the following Error The sub-network output operator failed to cook: /obj/new_version/tree/growing_alg/find_neighbour/outer_code/attribvop1 Warning: Errors or warnings encountered during VEX compile: /obj/new_version/tree/growing_alg/find_neighbour/outer_code/attribvop1: Internal compiler error. (15,1). Errors or warnings encountered during VEX compile: /obj/new_version/tree/growing_alg/find_neighbour/outer_code/attribvop1: Internal compiler error. (15,1). Error: Vex error: /obj/new_version/tree/growing_alg/find_neighbour/outer_code/attribvop1: Internal compiler error. (15,1) Failed to resolve VEX code op:/obj/new_version/tree/growing_alg/find_neighbour/outer_code/attribvop1 Unable to load shader 'op:/obj/new_version/tree/growing_alg/find_neighbour/outer_code/attribvop1'. Warning Errors or warnings encountered during VEX compile: /obj/new_version/tree/growing_alg/find_neighbour/outer_code/attribvop1: Internal compiler error. (15,1). Warning Errors or warnings encountered during VEX compile: /obj/new_version/tree/growing_alg/find_neighbour/outer_code/attribvop1: Internal compiler error. (15,1). Warning Vex error: /obj/new_version/tree/growing_alg/find_neighbour/outer_code/attribvop1: Internal compiler error. (15,1) Failed to resolve VEX code op:/obj/new_version/tree/growing_alg/find_neighbour/outer_code/attribvop1 Unable to load shader 'op:/obj/new_version/tree/growing_alg/find_neighbour/outer_code/attribvop1' Any ideas? Thank you Marta
  3. 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
  4. 4@m = ch4('transform'); @test = @m[2][3]; The first line assigns a 4x4 matrix channel to 4@m. I tried different things, but unfortunately the second line does not read the corresponding value from the matrix. How would I do that?
  5. HI FRIENDS! So over the past year I've been doing far too much Houdini in my free time, and I noticed that all of the people I look up to in the community have their own cute ODForce threads. So with the release of my latest blog post on Voronoi Diagrams and Remeshing, I thought it best to make one of those threads, to avoid flooding the Education section with tons of new posts... Anyways here's a link to my new blog post: https://medium.com/@jakerice_7202/voronoi-for-the-people-60c0f11b0767 And if the link itself isn't enough, here are a couple of GIFs from the blog post, including one that didn't make the cut. All credit for the post title goes to @mestela <3 Big thanks to @toadstorm for editing my grammar as well, and the whole ThinkProcedural discord for putting up with my insanity
  6. Hi there, i'm trying to animate multiple points that move randomly within a boundary. So far i have the random movement done, but i want to be able to get the points to collide with the boundary and carry on moving. Any help would be great. A walker.hipnc
  7. Hi there, i'm trying to animate multiple points that move randomly within a boundary. So far i have the random movement done, but i want to be able to get the points to collide with the boundary and carry on moving. Any help would be great. A walker.hipnc
  8. hi... i want random value between 0 -3 in the ratio of 2:2:6... i used "fit(rand(@ptnum),0,1,0,3)" and it gives me random no. between 0 to 3 but i also want to get them in exact ratio in a procedural way thanks in advance
  9. Hi node guys! I have a question that i breaking my non-programing head. I have this points selected based in the bounding object, I would like to push them out and make it look like is Squashing against any object in his way. I'm not using FEM because it didnt work in this case, actually dont know why. Thanks for any help or idea you can give me Jason.
  10. Hi node guys! I have a question that i breaking my non-programing head. I have this points selected based in the bounding object, I would like to push them out and make it look like is Squashing against any object in his way. I'm not using FEM because it didnt work in this case, actually dont know why. Thanks for any help or idea you can give me Jason.
  11. Hey, I would ideally like to have this all happen in Vex rather than the set I have made here. This would allow it to be more scalable, but perhaps I can save that for my next problem. Right now I am wondering how I go about recreating the curve I have outlined in pink on the image? Any ideas would be a big help as I'm really stuck. Thanks Metaball Arc_Circles_A_01.hip
  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. Hi, I would like to convert an rgb color value of an attribute at points to temperature (kelvin). I am wondering if anyone is aware of any algorithm related to that. cheers, C
  14. Hello everyone. Got a question about vex rotation for VDB objects. I've got a FLIP setup in which there is a model of a ship moving forward and rotating slightly. I created rotation control using VEX code. Very simple version of it looks like this: //Rotate object along X axis; this is just for an example matrix3 m = ident(); float angle_x = radians(ch('Angle')); rotate (m, angle_x, {1, 0, 0} ); @P *= m; This works for regular objects just fine. However, I want to use VDB version of the ship for collisions. When I apply this code to VDB object it doesn't work. I need VDB object to move and rotate as the original model exactly. So the question is - How can I transform this code or write a new one to rotate VDB object exactly as regular model?
  15. EDIT : This may be something different. When parent bones have non matching scales to the current edited bone, this issue arises. Going to poke around, issue remains tho, on uniform scaled bones too. I'm not sure if this should be in the scripting forum or not... But I'm running into some issues with non-uniform scaled bone's becoming uniformly scaled when using the agent edit node. I'm specifically trying to edit the bones through vex at this point now. It seems to change a non uniform scale to a uniform scale after using the maketransform vex function. I'm noticing this issue when polar decomposition and transposing of 4x4 matricies being scaled by one of the scale's values when only modifying a position or rotation of the matrix. As tho, instead of scaling by {1.2, .8, 1.3} it scales by {1.2, 1.2, 1.2} or maybe its just the vector's length of the found eigenvalues. Like when using the agent edit node, it will change any edited bone's non-uniform scale to a uniform scale. Has anyone found a simple way to get around this, other than manually editing the matrix position W row and using dihedral math to rotate the bones?
  16. Hi, In my scene i used cross product in vex for rotation. But i want to know how can i control rotation or give more randomization in rotation. And while rotation points also progressing in all axis,so how can i control or restrict points from moving in negative y-axis. And i want to restrict points inside the points scattering box, if its possible then plz share the idea. Plz help me to resolve it and found attachments below .mov and hip file. Thank you. vex_test_v001.hip vex_test_v01.mov
  17. Not sure if this should go in the Shaders sub forum. Obviously a huge topic but greatly inspired by the work of people like @FlexMonkey on twitter "Simple Plasma" (https://www.shadertoy.com/view/XsVSzW ) expressed in 3D as a lattice of cylinders using pic.twitter.com/9dW9va2qy0 Anyone aware of any tutorials that cover the basics of converting GLSL code to VEX for use inside a Volume Wrangle?
  18. Hi, I am looking for measuring volume by VEX and/or attributeVOP, instead of measureSOP node. Basically I have mega voronoi fracture model. After that, I want to apply for volume calculation with loop node and compile node. Key is that I cannot use hscript expression in measure>center with compile node. That's why I am looking for another method.
  19. This operator allows you to run an OpenCL kernel as part of your SOP network. Depending on the GPU, some operators can be orders of magnitude faster than even VEX. In this case the OpenCL code is 144 times faster than VEX on GTX 970.
  20. Can anyone tell me why the following throws an error on the numbers 5.41 and 0? if (@Frame > 24) { forcescale = {5.41}; } else { forcescale = {0}; }
  21. raytrace

    Hello everybody, i'm finishing coding a small raytracer that run in sop using vex. one of those thing I always wanted to try to do myself. it store everything on points so no rasterization plane as the idea was to have all the rendering data accessible for later use as you would with any other attributes. it is some sort of an hybrid in the sense that it is correct enough to try to make things look good. it feature many BRDF shading models, photon mapping global illumination ( mathematically done the simple way but it work) and full recursive ray's tree splitting for reflections and refractions. Here a few videos showing some of the feature and a big part of them are already available for download as an OTL for the non commercial edition for everybody interested with the hope it can be helpful to anybody that never coded those things before like me, as I learned a lot during the way. here the videos: This one have been updated recently with lots of new clips showing improvements there and there And this one got th GI part of it with a little demo at the end. download link in the description area: Hope you enjoy, best alessandro
  22. Hi friends! I just released an article on Medium walking through how I built a "Compute Dual" wrangle in VEX. As a quick summary, I basically wanted to know how the "Compute Dual" feature of the divide sop worked, so i slapped together a neat lil wrangle, to do just that! CLICK ME TO GO TO THE ARTICLE!!!!!!!! Here's a cute little gif showing off the construction of a dual graph. If you like it, please check out the article, it's free and it'd mean the whole world to me! =) Love you fools, Jake http://jakericedesigns.com/
  23. Hello, one question please: What expression can I write to use the @ptnum attribute to drive the @P.y attribute using VEX or Python expressions. What if I want to drive @P.y with @P.x ?? thanks in advance.......
  24. Hi guys, first topic, it's a beautifull moment. So i have a really really simple thing to do but i can't figure a way. I have like 3 objects, i want to go threw a for loop to get the bbox of these 3 objects and the generate a bbox from a cube with every of these objects. So at the end i will have 3 boxes with the size of the windows. I want to make it automatic so if i plug a new window it will be generate. Easy right? But i can't find the way to do it with the for each loop, some help? thanks So just for you to know, i loop in every windows and i take the bbox in a wrangle with this v@bbox= getbbox_size(0);