interface version 1
Scatters points on geometry surfaces (performance-optimized).
This operator is an alternative implementation of the original Scatter SOP.
It can be considered as a performance-oriented Scatter variant – it being faster, at the expense of some additional limitations.
Pros:
Performance: it’s about 2x-7x faster than the regular Scatter SOP (the preferred scenario is to generate insane amounts of points from a relatively low resolution geometry, preferably pre-triangulated).
If the input geometry doesn’t change, it becomes even faster as it only has to re-run the scatter process (e.g. interactive parameter tweaking is faster, too.)
Finer control over attribute inheritance: there are two levels of attribute inheritance (regular “nearest-neighbour” inheritance, and accurate interpolation), and the more expensive computation is run only for the specified attributes.
(Such tradeoffs can make quite a difference when working with large point clouds – e.g. tens of millions of points.)
Cons:
Geometry limitations: it can handle triangulated polygon meshes only (although mixed tri/quad meshes often work almost as well in practice). Cannot scatter on curves and into volumes (yet).
Attribute limitations: it can only interpolate float and vector types.
Parameters
Triangulate Geometry | If enabled, the input geometry will be triangulated before scatter. This might be needed as the scattering algorithm supports triangles only. This is a relatively slow operation, better be avoided if possible. (For the additional control parameters see the Divide SOP documentation.) Tip Although in theory the scatter algorithm requires triangles, in practice tri/quad mixtures usually work almost as well. So, since triangulation takes as much time as the scattering itself, it’s better to keep this switch off, if it doesn’t cause much visual difference. | ||||||||
Mode | The mode of determining the number of points to generate.
Tip There is a convenience menu item for the Points per Area parameter that calculates the points-per-area value from an explicit Number of Points.
| ||||||||
Num Points Scale % | Performs a percentage-based reduction to the results by deleting points randomly. Tip The difference between adjusting this and Note that this still generates all points first (so it’s ineffective to constantly use a large point count/low percentage ratio).
| ||||||||
Random Seed | Different values will result in different scattering patterns. (To have a different
pattern for each whole frame, use | ||||||||
Scatter Based on Primitive Area | Individual primitive surface area will be considered when scattering, resulting in an uniform distribution of points. | ||||||||
Add Particle System | Creates a particle system primitive, containing all points. (This is a relatively slow operation, so don’t use it unless necessary.) | ||||||||
Add Point Group | Creates a point group, containing all points. Tip This can be convenient if used with a Source Volume DOP, as it requires a source group by default (from Houdini 13). | ||||||||
Area Attribute | This is an optional (per-point, float) attribute that acts as a multiplier over the actual measured primitive area. | ||||||||
Inherit Attribs | A list of attributes that should be inherited by the generated points. (A nearest neighbour-like method is used, which is fast but not accurate.) | ||||||||
Interpolate Attribs | A list of point attributes to do interpolation for. This is slower but much more accurate than inheritance. | ||||||||
Update Interpolation | Updates the operator’s internals related to attribute interpolation. (This is no longer necessary – this button will be removed in a next version.) | ||||||||
Points Generated | A read-only numeric display, showing the number of points generated. |
To Do
Should work on volumes (VDB and regular, in this order)
Should work on curves (poly lines; NURBS, etc)
Release Notes
interface version 1 —
2014-02-06 |
|
2013-12-13 | Friday the 13th: Updated to H13 (replaced |
2013-09-22 | Added presets for |
2013-08-18 | Added |
2013-08-10 | The |
2013-08-01 | Fixed a bug that occured when interpolating attributes. |
2013-06-11 | Issued a workaround for interpolation update issue. |
2013-06-10 | Attribute interpolation works, but with certain limitations (mostly interface problems, related to lack of a proper internal update mechanism). |
2013-06-08 | Initial prototype. |