Avoid Obstacles
This particle operator performs multiple ray intersections between the particles’ velocity vector and a referenced SOP’s geometry to find an optimal new movement direction for the particle that will allow it to avoid hitting the geometry.
It shoots rays in increasingly bigger cones, as defined by the Cone Angle parameter(maximum cone angle) and the Rings parameter (the number of cones).
The number of rays shot for each cone is defined by the Steps Per Ring parameter.
If the distance from the particle to a hit position is greater than the specified Test Distance or no geometry is hit, evaluation is stopped and the vector that was used for that hit is used as the new velocity direction.
If the Test Distance is never reached, the vector that was used to get the greatest distance out of all rays shot is used as the new direction.
If the angle between new direction and original velocity is greater than Max Turn Angle, the angle is clamped to max turn angle.
Keep in mind that the first ray is always cast in the original movement direction, if that test succeeds, no additional tests are peformed and the original movement direction remains unchanged.
Get the Flash Player to see this player.
1 Comment to Avoid Obstacles
Hello Aearon;
Great demo reel and a Great Inspiration you are. I am an aspiring technical effects artist currently studying at the Savannah College of Art and Design. I am currently working on a project involving schools of fish and obstacles for an underwater shot. If it is at all possible, I am interested in checking out your “Avoid Obstacles” otl so I can work out it’s logic and probably implement a version into my project. It would greatly help in the development of my project and understanding of Houdini. Looking forward to hear from you soon.
- JOSEPH
October 13, 2009