Nuke TO HOUDINI

Houdni 20.5 New Copernicus Pack of Great Node But We Still Need To Custom For Artist Working More Easily

EXPOSURE NODE

At Axis studio my sup always said use exposure node
to have cleanest and we can under stand that
how much exposure in our light is adjust.

GRADE NODE

Houdini have a brightness node but as compositor
I Prefer Grade node like nuso I implement one for Houdini


TECNICAL REFERENCE AND CODE

THE EXPOSURE NODE

The math of exposure is super easy than I thought as I quick research is just IMAGE * 2^stop just that!!!!

#bind layer src? val=0
#bind layer !&dst
#bind layer exp_value? float val=0

#bind parm Exposure float val=0

@KERNEL
{

    //////// INPUT ////////
    float4 src = @src;
    float4 ori = src;
    
    //////// Exposure math ////////
    float4 output = ori * pow(2,@Exposure);
    
    //////// OUTPUT ////////
    @dst.set(output);
}

CODE

#bind layer src? val=0
#bind layer !&dst
#bind layer gamma? float val=1

#bind parm BlackPoint float val=0
#bind parm WhitePoint float val=1
#bind parm lift float val=0
#bind parm gain float val=1
#bind parm multiply float val=1
#bind parm offset float val=0
#bind parm gamma_parm float val=2.2


@KERNEL
{
    //////// gamma math ////////
    float4 src = @src;
    float4 ori = src;
    float gamma = @gamma * @gamma_parm;
    gamma = 1.0 / gamma;

    float4 gmmasrc = pow(src, gamma);
    
    //////// lift math ////////
    float lift = @lift;
    float4 lift_src = (lift*(1-ori));
    
    //////// output math ////////
        
    float4 output = pow(((( ((src-@BlackPoint) / (@WhitePoint - @BlackPoint)) * ((@gain*@multiply)-lift_src) + lift_src )+@offset)), gamma);

    @dst.set(output);
}

Reference

OpenCL CODE

THE GRADE NODE

Reference