Texture Scatter 2D X4 |
- Where to find it:
- Add Procedural Layer / Procedural / Extension Pack / Generators
- NodeGraph / Right Mouse Click / Add Nodes / Procedurals / Extension Pack / Generators
Texture Scatter 2D X4 is a complex texture bombing node, working in UV Space.
It is capable of generating seamless textures up to 32k resolution on any regular plane with full UV coverage.
It currently supports 4 Input Textures (X4).
DO NOT KEEP LIVE UNLESS CACHED OR HIDDEN Texture Scatter 2D Nodes are meant to be converted to paintable layers. Due to their impact on viewport performance it is absolutely not recommended to keep them live unless cached or hidden. |
- Getting a Display Driver Crash ? Find a solution here.
- Increasing the Layer count is linearly reducing your performance - twice the amount of layers, half the performance.
It is recommended to complete your basic settings with a lower layer count, then up the count as a last step.
- Increasing the Density does not affect performance too much
- Try to cache,flatten or hide one Texture Scatter Node before creating a second one.
- 'Clumping' will generally be less pronounced with 'Force Tileable' turned off.
This is due to the much more random distribution of textures when not creating tileable textures.
- Use the Layer Attenuation feature to get proper value layering for bump, displacement or normal maps.
A full demo & tutorial for an older version of this node (still fully applicable) is available here:
Updates with Extension Pack 4 are covered here
- Manifold UV
Allows you to overwrite the UV Settings of the Node with a manifold node
- Bake Point Image
The Bake Point Image Port allows you to feed data into the Node from upstream nodes that have been baked via a bake point into the Node.
When the node is evaluated, the Bake Point attached to the Port will be sampled and the UDIM 1001 Image will be transferred into
the Image Attribute of the Node.
This allows you to create patterns and textures via a nodegraph and use them directly inside this node with an element of non-destructivness
Example of using a Nodegraph and a Bake Point to dynamically feed a Pattern Generator Node with Node Inputs
- Edge Falloff
Allows you to overwrite the Edge Falloff Attributes of the Texture Maps in the Scatter with a Node Connection
TIP Try mapping the edges with values over 1 to get a more pronounced contrast in the falloff |
- Edge Softness
Allows you to overwrite the Edge Softness Attributes of the Texture Maps in the Scatter with a Node Connection
- Edge Roundness
Allows you to overwrite the Edge Roundness Attributes of the Texture Maps in the Scatter with a Node Connection
Any value fed in through the Edge Ports on the Node is still multiplied against the corresponding Edge Slider in the Texture Groups of the Node. |
MAIN TAB
- UV Repeat
A multiplier on the UV Repeat found under the UV Settings in the Transform Tab
- Density
A multiplier against the Cell Density Attribute found under the Cell Tab
- Layers
A multiplier against the Layers Attribute found under the Cell Tab
- Fill Background
If on, the background will be filled with the Background Color
- Background Color
The Background Color to use for filling the background if Fill Background is checked
- Activate Texture A / B / C / D
Activates the Texture Slot. Please note Texture Map A is always on.
- Importance
A percentage how much the texture should contribute to the final result.
Lowering Importance on Texture Map A will remove textures and replace them with a transparent cell.
- Clumping
Adjust the Clumping for each texture separately.
Clumping will remove textured cells to create clusters of features.
The per texture Clumping sliders are multiplied with the global multiplier in group 'Density'.
Please note that turning the Force to Tilable Mode off under the 'Density' group will result in a change in clumping behavior.
Due to the more random distribution of this mode, clumping will be a lot less pronounced.
- Texture Map
The Texture Map to be used for each slot. Transparency is supported.
- It will help performance to keep texture resolutions used here to a reasonable size like 256,512 or 1k.
- Invert Map
Inverts the Texture Map used in the respective Texture Slot.
- Alpha
Determines the way the alpha of the texture slot should be evaluate:
- From Map
The Transparency in your loaded texture map is used
- Alpha is Luminance
The Luminance of your loaded texture map is used as Alpha.
Black is transparent.
- Alpha is Inverted Luminance
The inverted Luminance of your loaded texture map is used as Alpha.
White is transparent.
- Hue/Sat Shift Mix
Allows you to set per texture how much of the random Hue & Saturation Shift should be mixed in.
This is helpful to keep one of your maps closer to their original color without loosing variation on the other maps.
Allows you to set per texture how much of the random Value Shift should be mixed in.
- Edge Falloff
Will contract the edges of your loaded textures. This attribute can also be mapped via the Nodegraph.
Please note that in this case this slider will act as a multiplier.
- Edge Softness
Will feather the edges of your loaded textures from the start of the Edge Falloff to the center of your texture.
This attribute can also be mapped via the Nodegraph. Please note that in this case this slider will act as a multiplier.
- Edge Roundness
Switches the Falloff from Square (0.0) to Radial (1.0).
This attribute can also be mapped via the Nodegraph. Please note that in this case this slider will act as a multiplier.
CELL TAB
Other than modifying the UV Settings, changing the density will create more 'unique' cells.
- Density
Determines how many cells will be filled with a texture. Overlap between cells is minimal.
Cells are generated regardless so increasing this value does have a large negative impact on your performance.
- Layers
The amount of times the texture bombing runs. Increasing layer count will cause cells to overlap each other so it is
great for creating chaotic distribution such as fallen leaves.
- Increasing the Layer count is linearly reducing your performance - twice the amount of layers, half the performance.
It is recommended to complete your basic settings with a lower layer count, then up the count as a last step.
Values outside the slider range If you have to, you can enter numbers outside the slider range to get even more layers |
- Clumping
Clumping will remove textured cells to create clusters of features.
This Clumping slider is a global multiplier on the Clumping Sliders under groups 'Texture Map A' , 'Texture Map B' etc.
Please note that turning the Force to Tilable Mode off will result in a change in clumping behavior.
Due to the more random distribution of this mode, clumping will be a lot less pronounced.
Effects of Clumping with 'Force to Tilable' on (left) and off (right):
- Noise
Determines the size of the Noise to be used to generate the cells and acts a little like a 'Seed' value.
Depending on your settings, density of textures might change a little.
- Force to Tileable
With Force to Tileable turned on you will create a perfectly tileable texture when using it on a plane with full uv coverage
(such as a plane created in Maya).
Turning it off will change the internal algorithm that is used to place textures, applying an offset for each added layer.
This will create more random distribution but will no longer be tileable.
Please note, depending on your entries in the UV Settings Group it is still possible that the result may no longer tile.
- Scene Size
Scene Size is a multiplier for the Scale Values below allowing you to compensate for large or small scene sizes
by effectively changing the slider ranges.
- Cell Scale
The Scale of each texture within its gridcell
- Map A / B / C / D Cell Coverage
Scale of each texture within the cell generated.
This allows you to set relationships between textures (sticks larger than leaves etc.).
The per Map Scale will not rescale the original grid cell but will just change the size of the texture within in the cell.
This can lead to gaps in your coverage.
- Randomize Scale
Introduces random scaling of textures.
This will not rescale the original grid cell but will just change the size of the texture within in the cell.
This can lead to gaps in your coverage.
- % Original Scale
A percentage of all generated textures that should be kept at original size, set under 'Global Scale' Group.
- Map A / B / C / D Rnd. Mix
A mixer for each texture how much it should be affected by the overall Randomize Scale
- Min Rotation
Minimum Rotation of each texture within its cell.
- Max Rotation
Maximum Rotation of each texture within its cell.
HSV TAB
- Cell Blend Mode
Different from the Layer Blend Mode, this determines how the cells are blended together between each other.
The minimum and maximum hue shift variation in degrees on a color wheel.
- Min / Max Sat
The minimum and maximum saturation variation.
The minimum and maximum value variation.
- Clamp
Some Cell Blend Modes such as Add can cause combined values of cells to go over 1.0. Clamp will clip the
resulting values below 0.0 and above 1.0
A global value shift on all textures. This is very useful together with Layer Attenuation to control Value buildup for bump or
displacement maps.
Note that Value Shift Mix on each each texture slot needs to be at 1.0 for it to have full effect.
- Layer Attenuation
The Value to be incrementally added or subtracted to the previous value for each Layer added on top.
This is great introduce changes on a per layer level so that features that are buried deeper have a darker value than the ones
on top. Use Value Offset to globally add or remove value.
Note that Value Shift Mix on each each texture slot needs to be at 1.0 for it to have full effect.
Effect of Layer Attenuation - Lower layers remain constant in value, upper layers get lifted
- HSV Seed
A randomization value for Hue / Saturation + Value Shift.
TRANSFORM TAB
Modifying UV Settings does not negatively impact performance since it is run on the finished 'scattered' result.
- UV Repeat
Will repeat the result of the scattering x-amount of times.
If you are using the node to create tileable textures, keep this at full values (no decimals)
- U Scale
Will scale the result of the scattering along U.
If you are using the node to create tileable textures, keep this at full values (no decimals).
- V Scale
Will scale the result of the scattering along V.
If you are using the node to create tileable textures, keep this at full values (no decimals).
- UV Rotation
Will rotate the result of the scattering.
If you are using the node to create tileable textures modify this value in 90 Degree increments
- U Offset
Will offset the result of the scattering along U.
If you are using the node to create tileable textures, keep this at full values (no decimals).
- V Offset
Will offset the result of the scattering along V.
If you are using the node to create tileable textures, keep this at full values (no decimals).
- Per UDIM Pivot
Affects the transformation pivot for UV Transforms.
With PerUDIMPivot on all transformation will be performed with a pivot at the center of each UDIM.
With PerUDIMPivot off, transformations for all UDIMs share one common pivot at the base of UDIM 1001
This will ensure seamless textures across UDIMs when your UV Shell is scaled up and covering multiple UDIMs.
without a cut inbetween.
UV Transformations applied to multiple UDIMs with perUDIM Pivot On (left) and off (right)
Unfortunately on Windows the Texture Scatter can let your display drivers time out during baking / flattening
when high Layer counts in the Node are set. This can happen even on the most high-end video cards
due to the hugely expensive texture bombing operations being run.
The 'crash' is the result of an automated 'timeout' setting in your windows registry after which Windows determines
your display driver is unresponsive -- even if it is in fact just busy with a complex operation.
- First try increasing your Windows Display Driver Timeout Delay. A Step-by-Step Guide can be found here
Working around the display driver timeout:
- Mari has an option in the preferences to split baking into smaller chunks, therefore giving the display driver
a continuous signal so it doesn't time out.
- In Mari go to EDIT / PREFERENCES
- Go to the GPU Tab and set your 'Max Render Size for Baking' to 256.
You can turn it back to default (1024) after you are done with the bombing procedure or leave it as is.
- Your baking and flattening process should now run smoothly.
- Another alternative is raising the setting 'Deferred Quad Split Count' in your GPU Settings
- Alternatively reduce the complexity in the Texture Scatter 2D Node by reducing the Layer Slider.