WonderTexture Get WonderTexture
Docs / Core Concepts / Resolution & Precision
Core Concepts • WonderTexture

Resolution & Precision

Understand how graph and node resolution, inheritance, relative sizing, and texture precision flow through a WonderTexture graph.

// PROCESSING CONTEXT

Size and Format for a Graph

Every texture-processing operation needs two pieces of context: Resolution tells WonderTexture how many pixels the texture contains, while Precision defines the numeric format used to store each channel.

You don’t have to hard-code both settings on every node. Graphs and nodes can inherit processing context from a parent graph or a primary texture input, which lets the same procedural setup adapt to different evaluation contexts.

RESOLUTION INHERITANCE Inherited nodes adapt to changes in graph or input context, while Absolute nodes remain explicitly fixed.

// GRAPH LEVEL

The Graph Defines the Base Context

Open N-panel → Graph Properties → Output to configure the graph’s base resolution and precision context (or use header enum parameters).

INPUTDESCRIPTION
AbsoluteResolution ModeOptionalUses the graph’s explicitly selected base texture resolution.
Relative to ParentResolution ModeDefaultInherits resolution from the context evaluating the graph. At the root level, the graph’s configured absolute size remains available as its concrete processing target.
Relative to InputResolution ModeOptionalUses the graph’s designated primary texture input as the resolution reference when one is available.

This becomes especially useful when the same graph is reused as an instance inside another graph.

// NODE LEVEL

Node Resolution Modes

Most texture-processing nodes expose Output Size Mode under Base Parameters:

INPUTDESCRIPTION
Relative to InputNode ResolutionCommon DefaultUses the node’s primary texture input as the base resolution. If no valid primary input exists, the node falls back to the parent context.
Relative to ParentNode ResolutionOptionalUses the processing context supplied by the surrounding graph or graph instance.
AbsoluteNode ResolutionOptionalUses an explicitly defined node resolution instead of inheriting the base size.
// RELATIVE SIZE

Relative Does Not Always Mean Same Size

Relative modes can apply a power-of-two offset. 0 keeps the inherited dimension, +1 doubles it, and -1 halves it.

For a 1024 × 1024 inherited context:

INPUTTYPEDEFAULTDESCRIPTION
-1, -1Relative Offset512 × 512Processes at half the inherited width and height.
0, 0Relative Offset1024 × 1024Processes at the inherited size.
+1, +1Relative Offset2048 × 2048Processes at double the inherited width and height.
-1, 0Relative Offset512 × 1024Width and height offsets can be controlled independently.

That gives you deliberate lower- or higher-resolution processing without giving up the graph’s adaptive behavior.

What Does Relative to Input Inherit From?

Texture-processing nodes can designate one texture socket as their primary input. With Relative to Input, WonderTexture reads the resolution arriving through that socket before applying any relative offset. For example, a 1024 × 1024 Bitmap connected to a Relative-to-Input Blur gives that Blur a 1024 × 1024 base context.

If the primary texture is missing or invalid, WonderTexture falls back to the parent graph context.

PRIMARY INPUT IS CONTEXT
The primary input is more than a visual socket convention. It can provide the resolution, precision and tiling mode context used by Relative to Input processing.

When to Use an Explicit Resolution

Use Absolute when an operation genuinely needs a fixed size regardless of its surroundings—for example, a specialized intermediate step, fixed-size resource, or deliberate performance constraint. Avoid using it everywhere, though, because too many fixed resolutions make reusable graphs much less adaptable.

DO NOT HARD-CODE EVERYTHING
If every node is Absolute, changing the graph’s master resolution will not resize those nodes. Use inheritance wherever the graph should scale with its evaluation context.
// BIT DEPTH

Texture Precision

Resolution controls pixel dimensions; Precision controls the numeric storage format for each texture channel.

INPUTTYPEDEFAULTDESCRIPTION
8-bit IntegerUINT8Low / StandardSuitable for many ordinary normalized texture results where extra range or precision is unnecessary.
16-bit IntegerUINT16Higher Integer PrecisionProvides greater integer precision than 8-bit textures at increased memory cost.
16-bit FloatFLOAT16Floating PointProvides floating-point storage with a useful balance of range, precision, and resource usage.
32-bit FloatFLOAT32Highest Listed PrecisionProvides full single-precision floating-point storage at the greatest memory cost of the available formats.

Precision uses the same high-level inheritance model. Relative to Input takes its format from the primary texture, Relative to Parent inherits the graph context, and Absolute uses the format selected directly on the node. If Relative to Input has no valid texture, WonderTexture falls back to the parent precision context.

Resolution and Precision Have a Cost

Higher resolution means more pixels to process and store; higher precision means more data per channel. Both can increase memory use and processing cost, so maxing out every setting does not automatically make a graph better.

A practical graph usually follows the intended output context and lowers resolution or precision only where the visual result allows it.

OPTIMIZE INTENTIONALLY
Use enough quality for the operation, but avoid fixing expensive settings on every node unless the workflow actually needs them.