Lookup T3D¶
Summary¶
The Lookup T3D replaces every value by the table entry it points to, as the Lookup TOP does: the first input is the index, mapped from Index Range to 0–1, and the second input (or a CHOP) is the table. A Ramp TOP as the table turns a density into colours; each channel of the output reads the same channel of the table.
With Index Channel at RGBA Independent each channel indexes the table with its own value; the other options index R, G and B with one value (luminance, a channel, an average or a maximum). Dark UV and Light UV set where in the table index 0 and 1 fall, so a vertical ramp or a diagonal through a 3D table works too.
Parameters - Lookup Page¶
Method Method ⊞ - Where the table comes from.
- 2nd TOP Input
secondinput- The second input, sampled along the line from Dark UV to Light UV. - CHOP Values
chop
Index Range Index1 Index2 ⊞ - The range of index values mapped onto the table: the first value reads the start of the table, the second its end. Values outside read beyond the ends, filled by Extend.
Index Channel Channel ⊞ - Which value indexes the table. RGBA Independent (the default) looks up each channel with its own value; the others use one value (luminance, a channel, an average or a maximum) for R, G and B.
Independent Alpha Independentalpha - Has no effect in 1.14 (the line that used it is commented out); alpha is looked up with its own value.
Darkuv Darkuv1 Darkuv2 Darkuv3 ⊞ - The table position that index 0 reads, as UVW coordinates in the table.
Lightuv Lightuv1 Lightuv2 Lightuv3 ⊞ - The table position that index 1 reads. The defaults run along the table's width, which suits a horizontal ramp.
Extend Inputextenduv ⊞ - What the table returns beyond its ends.
- Hold
hold - Zero
zero - Repeat
repeat - Mirror
mirror
CHOP Chop - The CHOP used as the table with Method CHOP Values: one sample per table entry, up to four channels.
Clamp CHOP Values Clampchopvalues - Clamps the looked-up CHOP values to 0–1.
Output Lookup Displaylookup - Replaces the index with the X position, so the output shows the table itself across the volume's width.
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.
- 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.
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.
- Nearest Pixel
nearest - Interpolate Pixels
linear - Mipmap Pixels
mipmap
Passes Npasses - Runs the operation this many times, each pass taking the previous pass's result in place of the first input. Cost scales linearly with the number of passes.
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.
Bypass Bypass - Passes the first input through unchanged and skips the operator's work. With nothing connected the output is a single black voxel.
Version Version - T3D version of this operator. Read-only information; include it when reporting a problem.
Copyright Copyright - Author and licence information. Read-only.
Operator Inputs¶
- Input 0: Index
lookup- The values to look up. Each channel, mapped from Index Range to 0–1, picks a position in the table (Index Channel can use one value for all channels). - Input 1: Table
source- The lookup table, used with Method 2nd TOP Input: a 2D texture such as a Ramp TOP, or a 3D texture. Each channel of the output is read from the same channel of the table.
Operator Outputs¶
- Output 0: Output
T3D_output- The looked-up values.
Performance¶
GPU time when the operator recooks: 0.023 ms at 64³, 0.036 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.