Notch Notch Manual 0.9.23
 Light | Dark
Reaction-Diffusion

Reaction-Diffusion

Performs reaction-diffusion simulation to a Procedural system.

image

image

Method #

Performs reaction-diffusion simulation, using a procedural input to restrict the placement of seeds and another procedural input to restrict growth.

This node simulates the Gray-Scott reaction-diffusion process, which can be thought of as a kind of fluid simulation with an extra step that creates organic-like patterns which grow out from seed points. Seed points are created by random spread, and if a seed restrictor is used then seeds outside of the restrictor volume are rejected. The growth is limited by the growth restrictor volume.

More information on the general topic of reaction-diffusion simulation can be found “here”:http://www.algosome.com/articles/reaction-diffusion-gray-scott.html

Nodes connected to this node will generally follow the parent child heirarchy. Other Procedural Generator nodes can be configured to combine with this shape using thier CSG modes, and displacement nodes will only apply to this shape.

Parameters

These properties control the core behaviours of the node.

ParameterDetails
Distance OffsetOffsets the distance field values, causing the generated distance field to expand of contract.
Filled ModeThickness of the Shell wall, when Filled Mode is set to Shell.
Shell ThicknessThickness of the Shell wall, when Filled Mode is set to Shell.
Simulation Grid Width/Height/DepthThe voxel resolution of the simulation grid used for performing the reaction-diffusion simulation
Material ColourModify the colour for the procedural material.
Initialisation SeedThe randomisation of the seed points can be changed by changing this seed value
SmoothenWhen enabled, the surface extracted from the simulation is smoothened internally
Growth PatternChanges the type of growth that occurs. at 0.0 the growth will be more like a web, and at 1.0 the growth will be more like separated blobs.
Growth RateControls the speed at which the growth progresses.
Invert Growth RestrictionInverts the in/out sense of the restriction volume
Seed DensityIncrease this property to make the seed points appear more densely packed together. decrease it to spread them out more.
CSG ModeThese options change how a this node combines with the rest of the procedural system. to find out more, see csg operation.
  • Replace : Replaces the previous procedural system.
  • Union : Adds the new procedural to the old procedural system.
  • Intersection : Interesects the new procedural with the old procedural.
  • Subtract : Subtracts the new procedural from the previous procedural system.
  • Blend : Blends between both procedurals - driven by the csg blend weight.
  • Union Blend : A combination of union and blend - driven by the csg blend weight.
  • Smooth Union : The new procedural is added to the old, and smoothing is applied to the outcome. Driven by the CSG Blend Weight.
  • Smooth Subtract : The new procedural is subtracted from the old, and smoothing is applied to the outcome. Driven by the CSG Blend Weight.
  • Offset : Adds one procedural ontop of the other another.
  • Custom Code : Allows you to enter your own expression code.
CSG Blend WeightHow much the new procedural blends with the old procedurals, depending on the CSG Blend Mode.
Affect ColourAffect the colour of the generated procedural system. only functions with ‘Generate Colours’ enabled in some Procedural Render nodes.
Always Enabled (No Time Bars)When enabled, this node will run regardless of time bar enable/disable. Due to how Notch handles shader generation with procedurals, with this enabled the node runs more efficiently.
Custom CSG CodeType your Custom code here, using the HLSL language. Read more on Editable Code.

Inputs

NameDescriptionTypical Input
Colour RampSpecify a range of colours the generator can use through its gradient.Colour Ramp
Transform ModifiersApply the transforms of another node to this node.Null
Target NodeModifiy the rotations of the node to always direct the z axis towards the input.Null
Local Transform OverrideApply the transforms of another node to this node, relative to its parent.Null