Jump to content


  • Content count

  • Donations

    0.00 CAD 
  • Joined

  • Last visited

  • Days Won


vtrvtr last won the day on July 4

vtrvtr had the most liked content!

Community Reputation

55 Excellent

About vtrvtr

  • Rank

Personal Information

  • Name
  • Location
  1. how this "show surface" system work?

    It's a two steps functionality. First, if you go the type properties under Node you'll the "Guide Geometry" points to the GUIDE null. Second, the switch1 inside the whitewater source node is connected to the Show Surface parameter of the HDA. It's a bit unclear because in the actual HDA parameter interface there's no mention of where it's referenced
  2. setDeleteScript method does not work?

    >>> n.setDeleteScript("aaa", hou.scriptLanguage.Hscript) >>> n.setDeleteScript('setenv x = "hello"', hou.scriptLanguage.Hscript) >>> hou.getenv('x') 'hello' This works. You can also take a look at this Particularly the Script Variables section. You can set a script that will trigger whenever any node or a specific node is triggered
  3. Copy to points multiple geometry

    Here's a way to do it in sops But if you want to do this with a big amount geo, you should take a look at instancing it by changing the intrinsic path of packed geo, which will be much faster and allow your to have much more geo for the same memory footprint switch_scatter_compiled_odf.hip
  4. Volume sourcing with reoriented simulation container

    Sourcing assumes world space, you need to change that to get the correct orientation Here's one way to do it orient_pyro_container_odf.hiplc
  5. Debris source

    Many nodes in Houdini are just collections of other nodes. The debris source is one of them. Which means you can simply dive in and change the behavior however you want Example: odf_debris_id.hip
  6. It should be something like this HOUDINI_OTLSCAN_PATH = $AELIB/otls;$QOTL/base;$QOTL/future;$QOTL/experimental;&

    I don't think you want to change your PREFs folder. That one is a important one What I think you want is what the Game Development Tools or QLib does and append your library paths to the default ones. If you read the documentation it'll say most tools search the HOUDINI_PATH in order to grab the relevant stuff. So, in theory, if you define the HOUDINI_PATH in your houdini.env as something like HOUDINI_PATH = " C:/users/garf/Documents/MyExtraToolSet;&" It should work, as long as you have an HDA, a script etc folders inside that path Personally I prefer to define the paths specifically, so it would be something like HOUDINI_OTLSCAN_PATH = "C:/users/garf/Documents/MyExtraToolSet/hda;&" HOUDINI_SCRIPT_PATH = "C:/users/garf/Documents/MyExtraToolSet/scripts;&" etc
  8. Sticky Fluid Setup (pressed F1)

    Is there a reason you're not using the stick options in the solver? Why do you need a custom force? sticky_fluid_setup_001_odf.hip
  9. Offset Carve SOP Growth

    Courtesy of the groom library per_prim_carve_groom_odf.hip https://i.imgur.com/YpPCZuH.gifv
  10. For just the four spheres I think it's better to simply create a switch and change it with a Ordered Menu type parameter. Similar to this If you want to create an arbitrary number of spheres I suggest you take a look at the Draw Curve SOP, specifically in the Stroke -> Number of Strokes section of its Type Properties. It's an example of a MultiParm Block type of parameter.
  11. Dynamically scaling pieces?

    You can get random colors with a assemble + color node However, I couldn't make your transform method there works. But you can use an expression like this to access the attribute, "s" in this case, in the primitive. This hinges on the fact all primitives have the same attribute
  12. voronoi fracture, how to avoid straight segments

    You can use the vdb to spheres technique to get around the concave bullet problem. It works quite well. https://i.imgur.com/HBIF1l1.gifv
  13. "Strength" is just a name. You can name the attribute you want to use to remove the constraint anything. When you don't use a sop solver and simply let the glue constraint relationship dop do its thing, all it's doing is comparing the strength attribute to the impact attribute and deleting the primitive if the latter is bigger. If you simply bypass the deleting wrangle and change the name of the attrib. from "str" to "strength", the glue constraint will remove it if it's bigger than impact. But doing it yourself gives you more control of when the constraint will break. As is suggested in the documentation For example, if you were to use a cone constraint, you'll see there's not "strength" attribute. Instead of you have torque, you have angle and can use those to break your constraints. About the setup, it doesn't work for a different reason. Click the relationship node inside the solver and move the timeline. The constraints by default don't move. You can't group them by position because of that. That's why I moved the box initially. I'm not aware of any easy way to make it update its position. If you really want you can use the name attrib. to query the position of the point the constraint is connected to and use that as a proxy for the constraint position, but honestly playing with the attributes is not only the default way but much easier. See attached Constraint_Strength_Test_v03_tk.hipnc
  14. Same thing, but instead of removing it, you can simply change the attribute there. Constraint_Strength_Test_v02_tk.hipnc
  15. Usually you want to do this kind of thing in SOPs. Unless you want your con str to change dynamically, there's no need to calculate it every frame. DOPs is also a bit of a PITA to visualize. In the file I do once in SOPs giving some str to the constraints and in DOPs I bring an animated box to break them for me. Red nodes are the important ones Constraint_Strength_Test_tk.hipnc