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

NgtpWater

The water effect creates animated underwater-like distortion, simulating the visual effect of looking through water or heat haze.

import { NgtpEffectComposer, NgtpWater } from 'angular-three-postprocessing';
@Component({
template: `
<ngtp-effect-composer>
<ngtp-water [options]="{ factor: 0.5 }" />
</ngtp-effect-composer>
`,
imports: [NgtpEffectComposer, NgtpWater],
})
export class SceneGraph {}
PropertyTypeDefaultDescription
factornumber0Distortion intensity (0 = no effect)
@Component({
template: `
<ngt-mesh [position]="[0, 0, -5]">
<ngt-plane-geometry *args="[10, 10]" />
<ngt-mesh-standard-material color="orange" />
</ngt-mesh>
<ngtp-effect-composer>
<!-- Subtle distortion for heat haze effect -->
<ngtp-water [options]="{ factor: 0.1 }" />
</ngtp-effect-composer>
`,
imports: [NgtpEffectComposer, NgtpWater, NgtArgs],
schemas: [CUSTOM_ELEMENTS_SCHEMA],
})
export class SceneGraph {}
  • factor: 0 disables the effect completely
  • Higher values create more pronounced ripple distortion
  • The effect is animated automatically
  • Combine with blue color grading for underwater scenes
  • Use subtle values (0.05-0.15) for heat haze effects
  • Works well with NgtpChromaticAberration for enhanced underwater look