Jump to content


  • Content count

  • Donations

    0.00 CAD 
  • Joined

  • Last visited

  • Days Won


sam.h last won the day on January 20 2018

sam.h had the most liked content!

Community Reputation

13 Good

About sam.h

  • Rank
  • Birthday 08/03/1985

Contact Methods

  • Website URL

Personal Information

  • Name
  • Location
    Adelaide, Australia
  1. Digital Asset Parameters

    Also I think dragging entire nodes into the type properties works ...
  2. I have found that using the bullet solver with box collision proxies for 1 frame is fast and reliable, pre scatter about the right amount and run a frame of the bullet solver... might work for you? (turn on the split impulse option...)
  3. Open color luts for mplay

    Thanks for the file
  4. Thanks, that is good to know!
  5. Retime large scale Pyro

    If anyone else is interested, this is the example file ... kind of works .... https://docs.google.com/file/d/0B1hcC7UTpSs5d2pRU0NOYnNuMWs/edit?usp=sharing
  6. Retime large scale Pyro

    I did this a few months ago using DOPs and advection to interpolate in between frames and it worked really nicely .... I will try to post an example tonight for you but basically the idea is: - get the density and vel volumes - timeshift to floor($FF) (just in case there is some blending that is going to interfere) - make an attribute that records $FF, call it sourceFrame or whatever - timeshift to your target anim (fit($FF,1,200,120,150) or so) - load these into a *timeless* dop net with sopscalarfield and sopvectorfield - use an advect volume node to move the volume, using frac(sourceFrame) as a multiplier for the advection and thats it, get the volumes back into sops and it should be all good.
  7. Control the bound of volume shader ?

    Mantra optimises the render by not evaluating the shader where the density is 0, so you need a small value in your volume in SOPs if you want to add density in the shader. So if you want to generate the density in the shader, just make the volume a constant 1 and then override it in the shader. You can then add a second volume primitive in SOPs for the SDF, give it a name and then you can import it in the shader with a Parameter node. If you want to disable the optimisation, there is a "Volume Zero Threshold" rendering property that you can add to your object. I have never used it before .... not sure if it is possible to put negative values in there.
  8. Minecraft Level Import in Houdini

    One way to cut down on the amount of geo would be check the neighbors for each cell, if none of the neighbors are empty then it won't be visible to camera. Also I think you can set the filtering on the texture node in your shader to 'point' and that will retain the blocky textures
  9. The proximity node in POPs will give you an attribute for the nearest particle. The switch node doesn't work per particle, you could create groups based on you numhit attribute for inside/outside of an intersection, then get you functions to operate on only a specific group. Does that make sense?
  10. It does seem like the problem is lots of particles stacked on top of each other -- especially since your filtering reduces the amount of stuck buckets... Have you tried reducing the bucket size?
  11. Mantra displacement issue

    If you want to displace along the normal, your noise should be float and then you can plug that into the displace along normal node "amount" input. P and N in current space can go straight into the displace along normal node. If you are just using the disp along normal node to recalculate the normal (never tried that before ... ) you should transform your P global into object space before the add, then back into current before it goes into the disp along normal node .... that should work.
  12. stretching using timewarp on cache

    You can use a timeblend node before the timewarp to interpolate between the frames ....too slow!
  13. You can use a Parameter node, you just can't put a time dependent expression inside the vopsop. Just put your expression on the outside of the vopsop. You don't have to have a detail attribute!
  14. What is the reasoning behind the variable behavior?

    I always assumed that a channel reference would trigger a node to cook if it hadn't already, is this not the case?
  15. What is the reasoning behind the variable behavior?

    Channel references have always returned the value displayed in the parm GUI. Having it return 0 in only this case, when you can see a value, is confusing and inconsistent. For example using $PT-1 in an attribcreate node will display -1 and a channel reference to that parm will return -1. There is no reason I can think of to do this, but the point is that the behavior of the channel reference is intuitive even if it isn't 'correct'. It should be up to the user to decide in what context it makes sense and the app should return the most sensible value rather than just giving up and returning 0. Also, there are no varying local variables available in the transform SOP...