User manual
3D LUT File Format
491
© 2014 Digital Vision
UM-2014.1-07
Format Description
// version, title and sizes of LUTs:
NUCODA_3D_CUBE version-number:int // version number
TITLE "colour-conversion-title:string" // optional title (in quotes)
LUT_1D_SIZE size-of-1D-LUTs:int // call this N
LUT_1D_INPUT_RANGE min1D:float max1D:float // optional
LUT_3D_SIZE number-of-levels-per-axis-in-3D-LUT:int // call this M
LUT_3D_INPUT_RANGE min3D:float max3D:float // optional
// specify 1D LUT: comes directly after the header specifications
red[0]:float green[0]:float blue[0]:float
red[1]:float green[1]:float blue[1]:float
red[2]:float green[2]:float blue[2]:float
...
...
red[N-1]:float green[N-1]:float blue[N-1]:float
// specify 3D LUT: comes directly after 1D LUT specification
// R lvl 0, G lvl 0, B lvl 0
red[0,0,0]:float green[0,0,0]:float blue[0,0,0]:float
// R lvl 1, G lvl 0, B lvl 0
red[0,0,1]:float green[0,0,1]:float blue[0,0,1]:float
// R lvl 2, G lvl 0, B lvl 0
red[0,0,2]:float green[0,0,2]:float blue[0,0,2]:float
...
...
// red level M-1, green level 0, blue level 0
red[0,0,M-1]:float green[0,0,M-1]:float blue[0,0,M-1]:float
// R lvl 0, G lvl 1, B lvl 0
red[0,1,0]:float green[0,1,0]:float blue[0,1,0]:float
// R lvl 1, G lvl 1, B lvl 0
red[0,1,1]:float green[0,1,1]:float blue[0,1,1]:float
// R lvl 2, G lvl 1, B lvl 0
red[0,1,2]:float green[0,1,2]:float blue[0,1,2]:float
...
...
// red level M-1, green level 1, blue level 0
red[0,1,M-1]:float green[0,1,M-1]:float blue[0,1,M-1]:float
// R lvl 0, g lvl 2, B lvl 0
red[0,2,0]:float green[0,2,0]:float blue[0,2,0]:float
// R lvl 1, G lvl 2, B lvl 0
red[0,2,1]:float green[0,2,1]:float blue[0,2,1]:float
// R lvl 2, G lvl 2, B lvl 0
red[0,2,2]:float green[0,2,2]:float blue[0,2,2]:float
...
...
// red level M-1, green level M-1, blue level 0
red[0,M-1,M-1]:float green[0,M-1,M-1]:float blue[0,M-1,M-1]:float
// R lvl 0, G lvl 0, B lvl 1
red[1,0,0]:float green[1,0,0]:float blue[1,0,0]:float
// R lvl 1, G lvl 0, B lvl 1
red[1,0,1]:float green[1,0,1]:float blue[1,0,1]:float
// R lvl 2, G lvl 0, B lvl 1
red[1,0,2]:float green[1,0,2]:float blue[1,0,2]:float
...
...
// red level M-2, green level M-1, blue level M-1
red[M-1,M-1,M-2]:float green[M-1,M-1,M-2]:float blue[M-1,M-1,M-2]:float
// red level M-2, green level M-1, blue level M-1
red[M-1,M-1,M-2]:float green[M-1,M-1,M-2]:float blue[M-1,M-1,M-2]:float