Skip to content
🎉 Angular Three v4 is here! Read the announcement

NgtpLUT

The LUT effect applies a 3D Look-Up Table for professional color grading, allowing you to apply complex color transformations used in film and photography.

import { NgtpEffectComposer, NgtpLUT } from 'angular-three-postprocessing';
import { textureResource } from 'angular-three-soba/loaders';
@Component({
template: `
@if (lut(); as lut) {
<ngtp-effect-composer>
<ngtp-lut [options]="{ lut }" />
</ngtp-effect-composer>
}
`,
imports: [NgtpEffectComposer, NgtpLUT],
})
export class SceneGraph {
lut = textureResource(() => '/path/to/lut.png');
}
PropertyTypeDefaultDescription
lutTexturerequiredThe LUT texture
blendFunctionBlendFunctionBlendFunction.SRCHow the effect blends
tetrahedralInterpolationbooleanfalseUse tetrahedral interpolation for quality

For .cube LUT files, you can use a custom loader:

import { LUTCubeLoader } from 'postprocessing';
import { loaderResource } from 'angular-three';
@Component({
template: `
@if (lutResult(); as result) {
<ngtp-effect-composer>
<ngtp-lut [options]="{ lut: result.texture3D }" />
</ngtp-effect-composer>
}
`,
imports: [NgtpEffectComposer, NgtpLUT],
})
export class SceneGraph {
lutResult = loaderResource(LUTCubeLoader, () => '/path/to/color-grade.cube');
}
@Component({
template: `
<ngt-mesh>
<ngt-sphere-geometry *args="[1, 32, 32]" />
<ngt-mesh-standard-material color="white" />
</ngt-mesh>
@if (lut(); as lut) {
<ngtp-effect-composer>
<ngtp-lut [options]="{
lut,
tetrahedralInterpolation: true
}" />
</ngtp-effect-composer>
}
`,
imports: [NgtpEffectComposer, NgtpLUT, NgtArgs],
schemas: [CUSTOM_ELEMENTS_SCHEMA],
})
export class SceneGraph {
lut = textureResource(() => '/luts/cinematic.png');
}
  • LUT textures are typically 256x16 or 512x512 PNG images
  • .cube files are industry-standard and provide better quality
  • Enable tetrahedralInterpolation for smoother color transitions
  • Many free LUTs are available online for various looks (cinematic, vintage, etc.)
  • LUTs can dramatically change the mood of your scene with minimal performance cost
  • Combine with other effects like vignette and bloom for complete color grading