Normally, tone mapping and color conversion happens automatically just
before outputting a pixel to the default (screen) framebuffer. In certain
post processing setups this is too late because some effects such as FXAA
require e.g. sRGB input. For such scenarios, RenderOutputNode can be used
to apply tone mapping and color space conversion at an arbitrary point
in the effect chain.
When applying tone mapping and color space conversion manually with this node,
you have to set RenderPipeline#outputColorTransform to false.
const postProcessing = new RenderPipeline( renderer );
postProcessing.outputColorTransform = false;
const scenePass = pass( scene, camera );
const outputPass = renderOutput( scenePass );
postProcessing.outputNode = outputPass;
export {}Constructor
new RenderOutputNode(colorNode, toneMapping, outputColorSpace)| Parameter | Type | Default Value |
|---|---|---|
| colorNode | Node | — |
| toneMapping | null | number | — |
| outputColorSpace | null | string | — |
Constructs a new render output node.
| Accessor | Type | |
|---|---|---|
| get type | string | |
Properties
| Property | Type | Default Value | |
|---|---|---|---|
| colorNode | Node | — | |
| _toneMapping | null | number | — | |
| outputColorSpace | null | string | — | |
| isRenderOutputNode | boolean | — | |
| Method | Type | |
|---|---|---|
| setToneMapping | (value: number) => ToneMappingNode | |
| getToneMapping | () => number | |
| setup | ({ context }: { context: any; }) => Node | |
Extends
TempNodeTSL function for creating a render output node.
| Parameter | Type | Default Value |
|---|---|---|
| color | Node | — |
| toneMapping? | null | number | null |
| outputColorSpace? | null | string | null |
Returns
RenderOutputNode