Skip to content

Limit T3D

Summary

The Limit T3D is the Limit TOP for volumes. Limit Type brings every channel into Minimum Value to Maximum Value by clamping, wrapping (Loop) or folding back and forth (Zig Zag); Positive Only then takes the absolute value. The Quantize page steps the values, or the sampling position: quantising the position reads the volume in blocks, a 3D pixelation.

Order of operations: the position is quantised first, then the value is limited, made positive and quantised.

Parameters - Limit Page

Limit Type Type ⊞ - How values outside Minimum Value to Maximum Value are brought back in, applied to all four channels. Menu · default Off

  • Off off
  • Clamp clamp - Values are clamped to the range.
  • Loop loop - Values wrap around, as a modulo of the range.
  • Zig Zag zigzag - Values fold back and forth between the limits (a triangle wave).

Minimum Value Min - Lower limit of the range. Float · default -1

Maximum Value Max - Upper limit of the range. Float · default 1

Positive Only Positive - Takes the absolute value after limiting, so the output is never negative. Toggle · default Off

Parameters - Quantize Page

Quantize Value Quantvalue ⊞ - Quantises the values to steps of Value Step, offset by Value Offset, rounding up, down or to the nearest step. Applied after the limit. Menu · default Off

  • Off off
  • Ceiling ceiling
  • Floor floor
  • Round round

Value Step Vstep - Size of a value step. Float · default 0.1 · min 0.0001

Value Offset Voffset - Shifts the steps, so the step boundaries need not sit at multiples of Value Step. Float · default 0

Quantize Position Quantpos ⊞ - Quantises the sampling position instead of the value: the volume is read in blocks of Position Step, a 3D pixelation. Rounding up, down or to the nearest block centre. Menu · default Off

  • Off off
  • Ceiling ceiling
  • Floor floor
  • Round round

Position Step Posstep1 Posstep2 Posstep3 ⊞ - Block size along X, Y and Z, as a fraction of each axis's extent (0.1 gives ten blocks across). Float × 3 · default 0.1 · min 0.0001

Position Offset Posoffset1 Posoffset2 Posoffset3 ⊞ - Shifts the block grid along each axis, in the same units. Float × 3 · default 0

Parameters - Common Page

Output Resolution Outputresolution ⊞ - Where the output's width, height and depth come from. With nothing connected to the first input the operator always uses Resolution, whichever option is set. Menu · default Use Input

  • Use Input useinput - The first input's width, height and depth.
  • Custom custom - The Resolution parameter.

Resolution Resolution1 Resolution2 Resolution3 ⊞ - Width, height and depth of the output in voxels. Used when Output Resolution is Custom, or when the first input is not connected. Memory is width × height × depth × bytes per voxel of the Pixel Format: 256³ at 16-bit float RGBA is 128 MiB. Int × 3 · default 64 · min 1

Input Smoothness Inputfiltertype ⊞ - Filtering of the internal GLSL TOPs' input samplers, as TouchDesigner's Input Smoothness. Inputs are read at normalised coordinates, so this matters whenever the input and output resolutions differ or an input is transformed. Nearest Pixel returns voxels unblended; Interpolate Pixels is trilinear. Menu · default Interpolate Pixels

  • Nearest Pixel nearest
  • Interpolate Pixels linear
  • Mipmap Pixels mipmap

Passes Npasses - Has no effect on this operator: its shaders are compute shaders, which read the connected input on every pass, so extra passes repeat identical work. Leave it at 1. Int · default 1

Pixel Format Format ⊞ - Pixel format of the output. Use Input takes the first input's format. With nothing connected, Use Input resolves to 8-bit fixed (RGBA), which clamps values to 0–1 and quantises them to 1/255: set a float format for signed distances, densities above 1, velocities or anything else outside 0–1. Menu · default Use Input

Bypass Bypass - Passes the first input through unchanged and skips the operator's work. With nothing connected the output is a single black voxel. Toggle · default Off

Version Version - T3D version of this operator. Read-only information; include it when reporting a problem. Str

Operator Inputs

  • Input 0: Input T3D_in1 - The volume to limit or quantise.

Operator Outputs

  • Output 0: Output T3D_output - The limited volume.

Performance

GPU time when the operator recooks: 0.016 ms at 64³, 0.022 ms at 128³, all of its passes summed (GeForce RTX 4090, TouchDesigner 2025.33230). An operator whose inputs and parameters are unchanged does not recook and costs nothing.