Particle Paint#
The Particle Paint tool allows you to paint and erase particles defined by a selected particle Container geometry. This tool only works in the 3D View.
(1) Particle Paint tool (2) Create particle Container script (3) Particle Paint cursor (4) particles display while painting (5) particles display after painting (6) Main Paint tool options (7) Brush options (8) Snapping and projection options (9) Particle properties options.
To paint particles, select a particle Container and then click-drag in the view to add new particles.
- Particles can be painted in empty space or directly on the items of the scene.
- Particles are always projected through the current view to the surface of the scene items.
Particles are projected to the underlying geometry and the brush cursor indicate the normal of the surface
To select a particle container in the scene using the 3D View, hold Ctrl key and Left Button on the container you wish to select.
Alternatively you can use the standard navigation widgets such as the Browser and the Explorer.
The behavior of this tool is defined using the Paint Mode and the Tool Type options.
Paint Mode#
Paint Mode defines the tool's interaction with the 3D View.
Paint Mode | Description |
---|---|
Stamp | Particles are created on mouse up, while mouse drag modifies the stroke position. |
Sketch (default) | Particles are continuously created while dragging the mouse. The stroke is validated on mouse up and pressing the Esc key cancels the current stroke. |
Tool Type#
Tool Type defines the type of the tool which can be an Airbrush, Paintbrush, Snapper, or an Eraser.
Tool Type | Description |
---|---|
Airbrush (default) | Strokes create particles. Particles are accumulated when strokes overlap. The particle density will be different over the stroke if it intersects with itself. |
Paintbrush | Strokes create particles. Particles are not accumulated when strokes overlap. The particle density remains the same over the stroke even if the it intersects with itself. |
Snapper | Particles within the stroke are snapped to any underlying geometries. For more information please refer to Snapper Tool. |
Eraser | Strokes delete particles. |
You can switch quickly between a brush tool and the erase tool by right-clicking in the 3D View and choosing the appropriate tool type from the contextual menu.
Alternately, you can use the Ins key to switch tool types. From the contextual menu, you can also remove all particles from the selected particle Container by selecting Clear Cloud.
Other options like Picking Precision, Display Path and Display Properties allows you to control the tool and the visual feedback:
Option | Description |
---|---|
Opacity Threshold | Specifies the alpha level to ignore target objects that don't match that level during the snapping process (see also Snapping Options) |
Picking Precision | Defines the distance threshold to pick a particle, in screen space (used for Eraser only). |
Display Path | When checked, the path of the brush is displayed over the current stroke. |
Display Properties | When checked, particle properties are displayed on the current stroke. |
Painting particles with Display Path enabled. Note: the path stays displayed until the next stroke is started.
Painting particles with Display Properties enabled. Here surface normals are displayed.
Mouse and Tablet Inputs#
To paint or erase particles, you can either use mouse or tablet input. More options are available using tablet input as pen pressure can be mapped to control density and size.
Pressure mapping applies both in paint and eraser tool types, but the effects are different. Please see sections Brush and Eraser for more details on pen pressure mapping.
In Sketch mode, it is possible to continue the last stroke. Usually, when adding particles, a stroke is started on mouse down, and completed on mouse up. Next mouse down will initiate a new stroke.
You may append to previous stroke by pressing and holding Ctrl+Shift before mouse down. Particles are added to fill the gap between the end of previous stroke and the starting point of the current stroke.
This feature is available in Sketch mode only, as long as you don’t move the mouse outside the 3D View and keep the same viewpoint. It does not work with the Eraser tool.
Airbrush/Paintbrush action | Description |
---|---|
Left Button | Drag to create particles. |
Shift+Left Button | Drag to constrain the brush to an horizontal or vertical path. A grey guideline is drawn as long as the drag is constrained. Releasing the Shift key while dragging will release the constraint and allow a free path. |
Shift+Ctrl+Left Button | Drag to continue last stroke (in Sketch mode only). |
Ctrl+Left Button | Select particle Container. |
Middle Button | Increase or decrease brush size. While dragging, the size value is displayed in the 3D View HUD. |
Shift+Middle Button | Drag to increase or decrease particle density. While dragging, the density value is displayed in the 3D View HUD. |
Ctrl+Middle Button | Drag to increase or decrease particle density falloff. While dragging, the falloff value is displayed in the 3D View HUD. |
Eraser action | Description |
---|---|
Left Button | Drag to erase particles |
Shift+Left Button | Drag to constrain the eraser to an horizontal or vertical path. A grey guideline is drawn as long as the drag is constrained. Releasing the Shift key while dragging will release the constraint and allow a free path. |
Ctrl+Left Button | Select particle Container |
Middle Button | Drag to increase or decrease eraser size. While dragging, the size value is displayed in the 3D View HUD. |
Shift+Middle Button | Drag to increase or decrease eraser strength. While dragging, the density value is displayed in the 3D View HUD. |
Ctrl+Middle Button | Drag to increase or decrease eraser strength falloff. While dragging, the falloff value is displayed in the 3D View HUD. |
Brush#
Brush options apply both to Airbrush and Paintbrush modes. Brush Type defines the shape of the brush. In all cases, the brush center is snapped onto the hit geometry (which may be the default plane). Except in View mode, brushes are oriented with respect to the hit geometry's surface normal.
If no geometry is hit, the surface normal is defined by the normal of the plane specified by the Snap Default Plane option. Particles are generated within the brush, in a 3D volume (Sphere, Hemisphere) or in a 2D area (Flat or Projected Disk) or in screen area (View).
Brush Type | Description |
---|---|
Sphere | Particles are created within an oriented sphere. |
Flat Disk | Particles are created within an oriented disk. |
Hemisphere | Particles are created within an oriented half-sphere. |
Projected Disk | Particles are created within an oriented disk then projected onto the scene geometry. |
View | Particles are created within a screen space disk and projected onto the scene geometry. |
In the 3D View, the brush cursor changes shape according to the Brush Type:
Particles are created differently, depending on the type of brush.
Particles creation based on Brush Type
Sphere and Hemisphere brushes fill 3D volumes with particles whereas Flat Disk, Projected Disk and View fill 2D surfaces around the brush center.
Projected Disk and View brushes project each particle on scene geometry. If no geometry is intersected, the particles are projected onto the plane defined by the Snap Default Plane option.
(1) Sphere: particles are created inside a sphere around the intersection of the brush with the scene geometry.
(2) Flat Disk: particles are created inside a disk around the intersection of the brush with the scene geometry.
(3) Hemisphere: particles are created inside the upper hemisphere (defined by the normal of the hit surface) around the intersection of the brush with the scene geometry.
(4) Projected Disk: particles are created inside the disk around the intersection of the brush with the scene geometry. Each particle is projected onto the scene geometry.
(5) View: particles are created inside the disk in screen space. Each particle is projected onto the scene geometry.
In addition to Brush Type, you can use the following attributes to setup the brush tool:
Option | Description |
---|---|
Brush Size | Define the diameter of the brush (both the distance between two consecutive spreads and the size of each spread). |
Brush Unit | Define the space in which the brush size is defined. In world space, the radius visually varies when you move the mouse around (adapts to the scene hit) , whereas in screen space, the radius visually remains the same. Thus in screen space you spread particles on a larger area when you hit farther and successive spreads become less frequent, in world space the spreads are equally spaced, and the covered area is constant. |
Brush Density | Define the number of particles within a spread. |
Brush Falloff | Control the particles density in the spread. Higher values create more particles near the center. |
Brush Curve | Control the particles density profile from center to the edge of the spread. It is not enabled if Brush Falloff is greater than 0.0%. |
Particle spread with no falloff and the default curve profile.
Particle spread with 100% falloff.
Note the profile curve is not read as falloff > 0.0%.
Particle spread with a curve profile.
Note the curve is used because falloff is set to 0.0%
Tip
When setting up your brush, you can pin the brush cursor inside the 3D View so that when editing its options, you will have visual feedback. To pin the brush cursor, move the cursor in the 3D View, then press the End key to freeze its position. You will now be able to preview any changes of the brush options.To free the brush cursor, press the End key again.
When using a tablet, you can map the pen pressure to drive density and size:
Brush Pressure Mapping | Description |
---|---|
Density | Particle density is increased with pen pressure. |
Size | Brush size is increased with pen pressure. |
Density + Size | Both particle density and brush size are increased with pen pressure. |
None | Pen pressure has no effect on particle creation. |
Your brush settings can be saved as preset and loaded back using the Save Brush and Load Brush buttons.
Note that the file used to store brush presets can be changed via Clarisse Preferences in (User Interface > Brush Presets File).
Brush Presets | Description |
---|---|
Load Brush | Select a brush among the available presets and load it as the current brush. |
Save Brush | Save the current brush settings as a preset. You will have to provide a name for the new preset. |
Eraser#
You can delete particles using the Eraser tool of the Particle Paint. To set the tool as eraser, either:
(1) set the Tool Type option to Eraser or (2) Right Button in the 3D View, with the Particle Paint tool activated, and select Erase, or (3) press the Ins key in 3D View with the Particle Paint tool activated.
Particle cloud before erasing
Particle cloud display while erasing ?
Particle cloud after erasing
When the tool is set to Eraser, the tool cursor will change its display.
Eraser cursor in View unit mode
Eraser cursor in World unit mode
The shape of the Eraser tool is defined using the Eraser Type option. In all cases except Punch mode, the brush center is snapped onto the hit geometry, which is usually the closest particle, or if snapping is activated, any piece of geometry in the scene.
When snapping is activated, Hemisphere and Cylinder brushes are aligned onto the hit surface normal, otherwise, they are aligned on the view normal. Particles that fall within the eraser are decimated with respect to the Strength option.
Eraser Type | Description |
---|---|
Sphere | Particles are deleted within an oriented sphere in 3D space. |
Cylinder | Particles are deleted within an oriented think disk in 3D space. |
Hemisphere | Particles are deleted within an oriented half-sphere in 3D space. |
Punch (View unit mode only) | Particles are deleted within an infinitely long cylinder perpendicular to the view plane. |
You can control the Eraser tool using the following options:
Option | Description |
---|---|
Eraser Size | Defines the diameter of the eraser. |
Eraser Thickness | Defines the height of the cylinder shape (used for Cylinder type only). |
Eraser Unit | Defines in which space the eraser is moving. In World space, the radius visually varies when you move the mouse around, whereas in Screen space, the radius visually remains the same. Therefore, in Screen space, you decimate more particles when you move the eraser farther. In World space, you decimate exactly the same number of particles, wherever to tool is located. |
Eraser Strength | Modulates the number of decimated particles within the Eraser. |
Eraser Falloff | Control the decimation strength. Higher values decimate more points near the center of the eraser. |
Like Airbrush and Paintbrush tools, the Eraser supports option presets (use Save Eraser and Load Eraser buttons).
You can also map pen pressure to control the eraser, using the Eraser Pressure Mapping:
Eraser Pressure Mapping | Description |
---|---|
Strength | Particle decimation strength is increased with pen pressure. |
Size | Eraser size is increased with pen pressure. |
Strength + Size | Both decimation strength and eraser size are increased with pen pressure. |
None | Pen pressure has no effect on particle decimation. |
Snapping#
While painting, Clarisse will compute which piece of geometry is currently under mouse, and the brush center will snap onto it. Then particles will be generated within the brush (their location depending on the brush shape). The following options allow you to specify the target items that can receive particles:
Option | Description |
---|---|
Geometry Group | Specifies a Scene Object or Group to snap the brush onto. If none is specified, the brush will snap on any geometry currently displayed (this is the default). |
Snap Default Plane | Specifies the default plane to snap onto when current mouse location doesn’t hit any target geometry. If none is specified, no particles will be added under mouse. By default, particles fall on XZ plane. |
When erasing, by default the eraser is snapped to the nearest particle found in the currently edited cloud. Hold the S key while erasing will snap the eraser onto the hit geometry rather than the nearest particle. This allows for example to decimate some particles lying on a background plane, keeping the front ones unchanged.
Clarisse also provides the Snapper which is a dedicated Tool Type used to snap existing particles to the geometries of the scene.
Snapper#
The Snapper allows you to snap particles to the surface of underlying geometries. It is very useful when you need to snap existing set of particles onto a geometry that has changed or to a completely new one.
With the default settings, particles within brush strokes get projected from their current position to the underlying geometry using the direction the view is currently looking at.
When no underlying surfaces/geometries are facing selected particles, no changes occur to the particles. However, Snapper is pretty comprehensive since it provides many modes and options controlling its behavior.
Update Normals#
When enabled, snapped particles will update their normals according to the surface normal of the new geometry they are snapped to. This is very handy if the particles are used in a scatterer setup with Use Support Normal on.
Original particles driving a scatterer using Support Normals
Particles snapped to the ground (note the updated normals)
Snapping Projection Mode#
Snapping Projection Mode controls how particles are projected to underlying geometries. Depending on your needs, there are multiple projection modes available:
Snapping Projection Mode | Description |
---|---|
View | When set to View, the Snapper defines the direction of the snapping projection from the position of the particle in the view (screen). This uses the viewing camera properties such as field of view etc... As such, the position of the particle in screen space doesn't change since it only move in the local Z axis. |
Normals | When set to Normals, the direction of the projection is directly defined by the normal of each particle. This mode can obviously used when particles define normals (created when Surface Normal property was turned on see below). |
Custom | When set to Custom, the direction of the projection is defined by the Snapping Custom Axis vector which is defined in World Space. By default, Snapping Custom Axis is set to (0,-1,0) so that particles are projected to the ground plane of the scene. For convenience, it is possible to pick a normal of a surface geometry of the scene to use as Snapping Custom Axis. Just press K + click to use the normal of the surface under the mouse. |
Snapping Direction#
It is possible to set the direction of projection using Snapping Direction which can be either Forward, Backward or in Both directions.
Snapping Direction | Description |
---|---|
Forward | Particles are projected in the same direction defined by the Snapping Projection Mode. |
Backward | Particles are projected in the opposite direction defined by the Snapping Projection Mode. |
Both | Particles are projected in both directions (forward and backward) and they are snapped to surface that was closest to the original position of the particles. |
Snapping Distance#
To perform snapping, particles are projected using rays that eventually end up intersecting a geometry of the scene. Using Min and Max Snapping Distance, it is possible to limit the minimum and maximum distance (in world space) from which intersections are taken into account.
This way, any geometries that located below the minimum and beyond the maximum distances get ignored. This feature is very useful to restrict the projection to a specific range in the scene.
Snapper Type#
The Snapper Type option allows you to control the shape of the Snapper brush used to select particles that will be projected to the scene. When clicking and dragging, particles within the brush gets selected.
Snapper Type | Description |
---|---|
Sphere | Particles are deleted within an oriented sphere in 3D space. |
Cylinder | Particles are deleted within an oriented think disk in 3D space. |
Hemisphere | Particles are deleted within an oriented half-sphere in 3D space. |
Punch (View unit mode only) | Particles are deleted within an infinitely long cylinder perpendicular to the view plane. |
In addition to Snapper Type, you can use the following attributes to setup the brush:
Option | Description |
---|---|
Snapper Size | Define the diameter of the snapper brush accord to Snapper Unit. |
Snapper Unit | Define the space in which the brush size is defined. In world space, the radius visually varies when you move the mouse around (adapts to the scene hit) , whereas in screen space, the radius visually remains the same. Thus in screen space you spread particles on a larger area when you hit farther and successive spreads become less frequent, in world space the spreads are equally spaced, and the covered area is constant. |
Snapper Thickness | Define the height of the cylinder when Snapper Type is set to Cylinder. |
Snapper Strength | Modulates the number of decimated particles within the Snapper. |
Snapper Falloff | Control the decimation strength. Higher values decimate more points near the center of the Snapper. |
Snapper Weight#
By default, particles are snapped to the surface of the underlying geometry. Using the Snap Strength you control how far particles move away from their original position to the new snapped one in such way that when:
- at 0% particles don't move, keeping their original positions.
- at 100% particles stick to the underlying geometry surface.
- at 50% particles are half way between their original and their new snapped positions.
Particle Properties#
Particles that are stamped or sketched are added to current cloud as 3D positions. You may also add their 3D normals (computed as normal to the hit surface at brush location), or other properties directly related to the particle generation by the brush.
Here is the list of properties than can be bound to the particles while creating them:
Option | Description |
---|---|
Surface Normal | Normal vector to the hit surface at the brush location. |
Path UV | Create a UV property for the current stroke where U defines the stroke path normalized length and V defines the distance to the center of the stroke path. |
Brush Orientation | 3D Vector from the brush center to the particle. |
Path Direction | 3D tangent to the local path of the stroke. |
Rotation | Euler rotation angles of the local axis computed using the surface normal and either the brush orientation of the particle or the path direction of the stroke. |
Brush Distance | Distance from the brush center to the particle, as a scalar. |
Scaling | Distance from the brush center to the particle, as a 3D uniform vector. |
Stroke ID | The index of the current stroke. Note: the index increases automatically for each stroke. |
Custom | Any user defined property can be set to particles while painting. Note: you must use the Property Editor to create custom properties. |
Properties can be displayed in 3D View while painting the particles. To enabled property display, you must check the Display Properties option in the General tab.
Displaying surface normal while painting particles
Displaying brush orientation while painting particles
Displaying path direction while painting particles
Displaying particle rotation while painting particles