Advanced Color¶
Advanced Color calculates particle color from an ordered set of operations. A layer can use particle data, spatial noise, nearby particles, or an image to choose a color. Later operations then combine that color with the result so far.
It is available for emitter color and for color changes caused by Change Color, Collision, Emit Children, and Conditional Logic color or spawn actions. In Nodes, the same operations are built with Advanced Color nodes connected to a color input.
Lists workflow¶
- Open a control that provides a particle color, such as an Emitter's Appearance section or the Change Color effect.
- Enable Use Advanced Color.
- Choose Add Color Layer and select a Factor Type.
- Configure the factor's input range, pattern, or lookup settings.
- Edit the Color Ramp when the factor type provides one.
- Choose a Blend Mode and Target.
- Add further layers and use the arrow buttons to establish their evaluation order.
- Disable individual layers while testing to isolate their contribution.
The displayed stack is evaluated from top to bottom. Each enabled layer receives the color produced by the preceding enabled layer. A disabled layer is skipped.
If Use Advanced Color is off, the adjacent single color value is used instead.
Nodes workflow¶
In Nodes, add Advanced Color from Fields & Streams. Connect the color that should be modified to Base Color, then connect the node's Color output to an Emitter or an effect color input.
Chain several Advanced Color nodes when more than one operation is required:
- Connect the initial color to the first node's Base Color.
- Connect its Color output to the next node's Base Color.
- Connect the last Color output to the consumer.
Connections set the evaluation order. In Nodes, share one color branch between several inputs or apply different operations to the same base color on separate branches. Lists use a separate ordered stack in every color control.
An Image Texture factor in Nodes samples UVs from the Emitter source connected to the graph. It still requires a mesh Object source with the named UV map.
Blend and channel controls¶
Most operations expose two controls:
- Blend Mode combines the new color with the input color. Normal replaces it; Multiply darkens with values below white; Add adds channel values; Screen brightens; Overlay increases contrast. Subtract, Divide, Difference, Lighten, Darken, Maximum, and Minimum provide direct channel operations. Results are limited to the valid color range.
- Target applies the operation to RGB, or only to Hue, Saturation, or Value. A single-channel target converts the colors to HSV, changes the selected component, and preserves the other two components of the input color.
The alpha value of a layer is used when combining it with the input color. Transparent parts of an image or color ramp reveal the preceding color. Adjust preserves alpha.
Adjust has no Blend Mode or Target because it directly modifies the incoming color. Image Texture with Normal also omits those controls and uses the sampled image color directly, including its alpha.
Factor types¶
Noise¶
Samples a procedural 3D pattern at each particle position. Use it for spatially coherent color variation that moves with the optional animation speed.
- Noise Type selects Classic, Smooth, Billow, Ridged, Warped, Streaks, Bands, or Speckles.
- Scale controls feature size. Higher values create larger features.
- Speed animates the pattern. Zero keeps it stationary.
- Seed selects another deterministic variation.
- Octaves adds progressively finer detail.
- Lacunarity controls the frequency increase between octaves.
- Persistence controls how strongly the finer octaves contribute.
Higher octave counts and Warped noise cost more than a basic low-octave pattern.
Random¶
Assigns each particle a stable value and maps it through the Color Ramp. Seed produces another repeatable distribution. The value does not change every frame.
Age¶
Uses normalized lifetime: 0 at birth and 1 at the end of the particle's life. This makes the same ramp span short- and long-lived particles consistently.
For a color that should keep updating as a particle ages, use Advanced Color in a simulation effect such as Change Color. Emitter color is evaluated when particles are created.
Speed¶
Maps speed at Min Speed to 0 and speed at Max Speed to 1. Values outside the interval use the nearest ramp end. This uses velocity magnitude, not a signed axis component.
Mass¶
Maps Min Mass to 0 and Max Mass to 1. It can distinguish emitter profiles or particles whose mass was changed during the simulation.
Direction¶
Compares velocity direction with Direction. Parallel and opposite motion both produce 1; perpendicular motion produces 0. This factor describes alignment with an axis, not forward versus backward travel.
Axis Position¶
Maps world-space position on the selected Axis from Min to Max. Use this for height gradients or color regions aligned to X, Y, or Z.
Particle Proximity¶
Finds the nearest matching particle inside Distance. The factor increases according to proximity and Falloff. It is 0 if no matching neighbor is inside the search radius, and a particle never detects itself.
Enable Filter by Group to search only the selected particle group. Use this to visualize contact between populations rather than density within the same population.
Neighbor Count¶
Counts matching particles inside Radius, then maps Min to 0 and Max to 1. Filter by Group restricts the counted particles to one group.
Both neighbor-based factors require spatial searches. Keep their radii no larger than the visual result requires, especially on large simulations.
Image Texture¶
Samples an image with the source mesh's UV coordinates. It is available for Emitter color in Lists and as an Advanced Color node operation in Nodes.
Requirements and controls:
- The Emitter must use a mesh Object source. Collection sources do not provide this UV workflow.
- UV Map must name a UV layer on that source object.
- Image points to a still image or the first file of a sequence.
- Is Sequence enables Start Frame, End Frame, Offset, and Extend Mode.
- Hold keeps the first or last sequence image outside the range. Loop repeats it. Blank returns transparent color outside the range.
Image colors are sampled when particles are emitted. A missing source or required UV map shows an error in the UI.
Constant¶
Uses one RGBA color to tint, replace or combine with an earlier result. No Color Ramp is needed.
Adjust¶
Modifies the incoming color without a Color Ramp:
- Hue rotates hue. Zero is unchanged.
- Saturation uses 1 as unchanged and 0 as grayscale. Values above 1 increase saturation until clamped.
- Value uses 1 as unchanged and 0 as black. Values above 1 increase brightness until clamped.
- Contrast uses 1 as unchanged. Values below 1 reduce contrast; values above 1 increase it.
Because Adjust operates on the preceding result, it must receive a meaningful base color. In Nodes, connect Base Color. In Lists, place it after the layer whose result should be adjusted.
Color Ramp¶
Factors other than Image Texture, Constant, and Adjust produce a value from 0 to 1. The Color Ramp converts that value into RGBA color.
The Presets menu provides factory ramps grouped into Utility, Data, Thermal, Environment, and Stylized categories. A user preset stores the ramp stops, interpolation, color mode, and hue interpolation. It can be reused in other supported Pro Particles Studio ramp controls.
Practical setups¶
Color particles by speed¶
- Add Advanced Color to a continuously evaluated Change Color effect.
- Choose Speed.
- Set Min Speed to the speed that should receive the left ramp color.
- Set Max Speed to the speed that should receive the right ramp color.
- Set the ramp to the desired slow-to-fast colors.
- Use Normal and RGB for a full replacement, or another blend and target to preserve part of the existing color.
Add stable breakup without losing a base gradient¶
- Create an Age or Axis Position operation for the main gradient.
- Add a Noise operation after it.
- Use Multiply, Overlay, or an HSV Target instead of Normal if the first gradient should remain visible.
- Adjust Scale before increasing Octaves. This separates feature size from fine detail.
In Nodes, build the same order by connecting the first node's Color output to the second node's Base Color.
Troubleshooting¶
- Only the last color is visible: A later Normal RGB operation replaces the previous RGB result. Change its blend mode, target one HSV component, or reorder the operations.
- Age color does not change after birth: The color was assigned by the Emitter. Apply the Age operation through Change Color when it must be reevaluated during simulation.
- Direction looks identical in both directions: This is expected. The factor measures alignment with the selected axis and treats parallel and opposite motion alike.
- Image Texture is unavailable or reports missing UVs: Use a mesh Object source, select an existing UV map, and verify the image path. A collection source is not supported for this factor.
- Proximity or Neighbor Count is expensive: Reduce the search radius, filter the affected particles, or use fewer such operations.
- Adjust appears to do nothing: Check that it follows or receives a base color, and remember that 0 Hue and values of 1 for Saturation, Value, and Contrast are neutral.