Class: ColorGradingPost
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:29
Color grading, applied after the tonemap on display-referred color: exposure trim, white balance (temperature / tint), contrast, saturation, ASC-CDL slope / offset / power, and an optional strip LUT for film looks.
const post = scene.addComponent(PostProcessingComponent);
const grade = post.addPost(ColorGradingPost);
grade.contrast = 1.15;
grade.saturation = 1.1;
grade.temperature = 0.2;
grade.setLUTFromFunction(16, (r, g, b) => [r, g * 0.9, b * 0.8]); // or grade.lut = a 256×16 strip textureConstructors
Constructor
new ColorGradingPost():
ColorGradingPost
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:41
Returns
ColorGradingPost
Overrides
PostBase.constructor
Properties
postQuad
postQuad:
ViewQuad
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:30
renderTexture
renderTexture:
RenderTexture
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:31
enable
enable:
boolean=true
Defined in: src/gfx/renderJob/post/PostBase.ts:23
Inherited from
PostBase.enable
isFinalPass
isFinalPass:
boolean=false
Defined in: src/gfx/renderJob/post/PostBase.ts:27
When true, PostPass iterates this post AFTER every regular post regardless of attach order — used by TonemapPost so the ACES curve always lands on the fully-composited HDR signal.
Inherited from
PostBase.isFinalPass
postRenderer
postRenderer:
PostPass
Defined in: src/gfx/renderJob/post/PostBase.ts:28
Inherited from
PostBase.postRenderer
rendererPassState
rendererPassState:
RendererPassState
Defined in: src/gfx/renderJob/post/PostBase.ts:29
Inherited from
PostBase.rendererPassState
_boundCtx
_boundCtx:
Context3D=null
Defined in: src/gfx/renderJob/post/PostBase.ts:30
Inherited from
PostBase._boundCtx
Accessors
exposure
Get Signature
get exposure():
number
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:75
Exposure trim in stops.
Returns
number
Set Signature
set exposure(
v):void
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:76
Parameters
v
number
Returns
void
temperature
Get Signature
get temperature():
number
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:79
White balance, −1 cool … +1 warm.
Returns
number
Set Signature
set temperature(
v):void
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:80
Parameters
v
number
Returns
void
tint
Get Signature
get tint():
number
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:83
Green–magenta balance, −1 green … +1 magenta.
Returns
number
Set Signature
set tint(
v):void
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:84
Parameters
v
number
Returns
void
contrast
Get Signature
get contrast():
number
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:87
Contrast, 1 = unchanged.
Returns
number
Set Signature
set contrast(
v):void
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:88
Parameters
v
number
Returns
void
saturation
Get Signature
get saturation():
number
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:91
Saturation, 0 = greyscale, 1 = unchanged.
Returns
number
Set Signature
set saturation(
v):void
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:92
Parameters
v
number
Returns
void
slope
Get Signature
get slope(): [
number,number,number]
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:95
ASC-CDL slope per channel.
Returns
[number, number, number]
Set Signature
set slope(
v):void
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:96
Parameters
v
[number, number, number]
Returns
void
offset
Get Signature
get offset(): [
number,number,number]
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:99
ASC-CDL offset per channel.
Returns
[number, number, number]
Set Signature
set offset(
v):void
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:100
Parameters
v
[number, number, number]
Returns
void
power
Get Signature
get power(): [
number,number,number]
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:103
ASC-CDL power per channel.
Returns
[number, number, number]
Set Signature
set power(
v):void
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:104
Parameters
v
[number, number, number]
Returns
void
lutIntensity
Get Signature
get lutIntensity():
number
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:107
LUT blend, 0…1.
Returns
number
Set Signature
set lutIntensity(
v):void
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:108
Parameters
v
number
Returns
void
lut
Get Signature
get lut():
Texture
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:114
Strip LUT texture (size²×size, e.g. 256×16 or 1024×32), sRGB-encoded, top row = green 0. null removes it. The texture must not use mipmaps.
Returns
Set Signature
set lut(
tex):void
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:115
Parameters
tex
Returns
void
lutSize
Get Signature
get lutSize():
number
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:126
Edge length of the current LUT cube, 0 without a LUT.
Returns
number
Methods
onResize()
onResize():
void
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:55
Returns
void
Overrides
PostBase.onResize
setLUTFromFunction()
setLUTFromFunction(
size,fn):object
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:132
Build a LUT from a function on sRGB-encoded colors and use it.
Parameters
size
number
fn
(r, g, b) => [number, number, number]
Returns
object
the pixel data, e.g. to feed ColorGradingUtil.sampleLUT.
data
data:
Uint8Array
width
width:
number
height
height:
number
render()
render(
view,command):void
Defined in: src/gfx/renderJob/post/ColorGradingPost.ts:144
Parameters
view
command
GPUCommandEncoder
Returns
void
Overrides
PostBase.render
compute()
compute(
view):void
Defined in: src/gfx/renderJob/post/PostBase.ts:133
Parameters
view
Returns
void
Inherited from
PostBase.compute
destroy()
destroy(
force?):void
Defined in: src/gfx/renderJob/post/PostBase.ts:143
Parameters
force?
boolean
Returns
void
Inherited from
PostBase.destroy

