Jump to content


  • Content count

  • Donations

    0.00 CAD 
  • Joined

  • Last visited

  • Days Won


vtrvtr last won the day on December 22 2017

vtrvtr had the most liked content!

Community Reputation

51 Excellent

About vtrvtr

  • Rank

Personal Information

  • Name
  • Location
  1. 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
  2. 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
  3. 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
  4. 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
  5. 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
  7. 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
  8. Offset Carve SOP Growth

    Courtesy of the groom library per_prim_carve_groom_odf.hip https://i.imgur.com/YpPCZuH.gifv
  9. 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.
  10. 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
  11. 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
  12. "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
  13. Same thing, but instead of removing it, you can simply change the attribute there. Constraint_Strength_Test_v02_tk.hipnc
  14. 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
  15. If you open the help inside Houdini and scroll down, generally there's an example file that hopefully clarifies at least the basic usage of some node. In this case there's one and it looks like this The classic example of simulating a lowres sheet and transferring to a higher res one. Quite common for soft bodies. Basically you want to use the capture sop to capture the high res geo with the morphing geo and in the deform node you want to put the captured geo the lowres rest geo and the deforming low res geo, in this order. The point deform and wire deform sop works in a very similar way