欢迎光临散文网 会员登陆 & 注册

「中英文双字幕」「高阶达芬奇 DCTL 编程入门 Part.1 -色彩科学...

2022-10-03 22:02 作者:PaletteLooks  | 我要投稿

Gain高光增益

输出RGB值=(输入RGB值)* Gain值

rgb * gain


Offset偏移 

输出RGB值= 输入RGB值+Offset值

rgb + offset


Lift 暗部

输出RGB值=输入RGB值* (1-Lift值)+Lift值

rgb * (1 - lift) + lift


Gamma 中灰

输出RGB值=输入RGB值^(1/Gamma值)

powf(rgb, (1 / gamma)


Contrast 非S弯线性对比度

输出RGB值=(输入RGB值-轴心值pivot)*Contrast 值+轴心值pivot

(rgb-pivot)*contrast+ Contrast


// lift gamma gain offset DCTL代码


DEFINE_UI_PARAMS(offset, Offset, DCTLUI_SLIDER_FLOAT, 0.0, -1.0, 1.0, 0.1)

DEFINE_UI_PARAMS(lift, Lift, DCTLUI_SLIDER_FLOAT, 0.0, -1.0, 1.0, 0.1)

DEFINE_UI_PARAMS(gamma, Gamma, DCTLUI_SLIDER_FLOAT, 1.0, 0.0, 2.0, 0.1)

DEFINE_UI_PARAMS(gain, Gain, DCTLUI_SLIDER_FLOAT, 1.0, 0.0, 2.0, 0.1)



__DEVICE__ float3 transform(int p_Width, int p_Height, int p_X, int p_Y, float p_R, float p_G, float p_B)

{


float3 rgb = make_float3(p_R, p_G, p_B);


rgb = make_float3(_powf(rgb.x, (1 / gamma)), _powf(rgb.y, (1 / gamma)), _powf(rgb.z, (1 / gamma)));


rgb = make_float3(rgb.x * (1 - lift) + lift, rgb.y * (1 - lift) + lift, rgb.z * (1 - lift) + lift);


rgb = make_float3(rgb.x * gain, rgb.y * gain, rgb.z * gain);


rgb = make_float3(rgb.x + offset, rgb.y + offset, rgb.z + offset);


return rgb;


}

文本编辑器保存为dctl后缀 放入达芬奇lut文件夹即可打开

「中英文双字幕」「高阶达芬奇 DCTL 编程入门 Part.1 -色彩科学...的评论 (共 条)

分享到微博请遵守国家法律