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, 3.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 = {p_R, p_G, p_B}; rgb.x = _powf(rgb.x, 1 / gamma); rgb.y = _powf(rgb.y, 1 / gamma); rgb.z = _powf(rgb.z, 1 / gamma); rgb.x = rgb.x + offset; rgb.y = rgb.y + offset; rgb.z = rgb.z + offset; rgb.x = rgb.x * (1 - lift) + lift; rgb.y = rgb.y * (1 - lift) + lift; rgb.z = rgb.z * (1 - lift) + lift; rgb.x = rgb.x * gain; rgb.y = rgb.y * gain; rgb.z = rgb.z * gain; return rgb; }