#ifndef _OCT_MATERIAL_h_
#define _OCT_MATERIAL_h_

enum
{
    OCT_MATERIAL_MAT_PREVIEW=1203,
    OCT_MATERIAL_MATTYPE = 2500,
    OCT_MATERIAL_PREVIEW,
    OCT_MATTYPE_DIFFUSE,
    OCT_MATTYPE_GLOSSY,
    OCT_MATTYPE_MATERIAL_MIX,
    OCT_MATTYPE_SPECULAR,
    OCT_MATTYPE_PORTAL,
    OCT_MATERIAL_TEST,
    MY_LINK,
    OCT_MATERIAL_TYPE,
    OCT_MATERIAL_DIFFUSE, OCT_MATERIAL_GLOSSY, OCT_MATERIAL_MIX, OCT_MATERIAL_SPECULAR, OCT_MATERIAL_xxx,
    OCT_MATERIAL_DIFFUSE_COLOR,
    OCT_MATERIAL_DIFFUSE_NODE,
    OCT_MATERIAL_DIFFUSE_LINK,
    OCT_MATERIAL_DIFFUSE_FLOAT,
    OCT_MATERIAL_DIFFUSE_MIX,
    OCT_MATERIAL_DIFFUSE_USECOLOR,
    OCT_MATERIAL_DIFFUSE_SUBGROUP,

    OCT_MATERIAL_SPECULAR_COLOR,
    OCT_MATERIAL_SPECULAR_FLOAT,
    OCT_MATERIAL_SPECULAR_LINK,
    OCT_MATERIAL_SPECULAR_MIX,

    OCT_MAT_REFLECTION_COLOR,
    OCT_MAT_REFLECTION_FLOAT,
    OCT_MAT_REFLECTION_LINK,
    OCT_MAT_REFLECTION_MIX,

    OCT_MATERIAL_ROUGHNESS,
    OCT_MATERIAL_ROUGHNESS_COLOR,
    OCT_MATERIAL_ROUGHNESS_FLOAT,
    OCT_MATERIAL_ROUGHNESS_LINK,
    OCT_MATERIAL_ROUGHNESS_MIX,

    OCT_MATERIAL_FILMWIDTH_LINK,
    OCT_MATERIAL_FILMWIDTH_COLOR,
    OCT_MATERIAL_FILMWIDTH_FLOAT,

    OCT_MATERIAL_FILMINDEX,

    OCT_MATERIAL_BUMP_LINK,
    OCT_MATERIAL_BUMP_COLOR,
    OCT_MATERIAL_BUMP_FLOAT,

    OCT_MATERIAL_NORMAL_LINK,
    OCT_MATERIAL_NORMAL_COLOR,
    OCT_MATERIAL_NORMAL_FLOAT,

    OCT_MATERIAL_OPACITY_LINK,
    OCT_MATERIAL_OPACITY_COLOR,
    OCT_MATERIAL_OPACITY_FLOAT,
    OCT_MATERIAL_OPACITY_MIX,

    OCT_MATERIAL_NORMAL ,
    OCT_MATERIAL_OPACITY,

    OCT_MATERIAL_INDEX,
    OCT_MATERIAL_DISPCOEFF_B,

    OCT_MATERIAL_TRANSMISSION,
    OCT_MATERIAL_TRANSMISSION_COLOR,
    OCT_MATERIAL_TRANSMISSION_LINK,
    OCT_MATERIAL_TRANSMISSION_FLOAT,

    OCT_MATERIAL_EMISSION,

    OCT_MATERIAL_MATTE,
    OCT_MATERIAL_SMOOTH,

    OCT_MATERIAL_MEDIUM,
    OCT_MATERIAL_MAT_PREVIEWxxx,
    OCT_MATERIAL_FAKESHADOW,

    OCT_MAT_USE_COLOR,
    OCT_MAT_USE_SPECULAR,
    OCT_MAT_USE_ROUGHNESS,
    OCT_MAT_USE_REFLECTION,
    OCT_MAT_USE_FILMWIDTH,
    OCT_MAT_USE_FILMINDEX,
    OCT_MAT_USE_BUMP,
    OCT_MAT_USE_NORMAL,
    OCT_MAT_USE_OPACITY,
    OCT_MAT_USE_DISPERSION,
    OCT_MAT_USE_INDEX,
    OCT_MAT_USE_TRANSMISSION,
    OCT_MAT_USE_EMISSION,
    OCT_MAT_USE_MEDIUM,
    OCT_MAT_USE_FAKESHADOW,
    OCT_MAT_USE_DISPLACEMENT,
    OCT_MAT_USE_EDITOR,
    OCT_MATERIAL_DISPLACEMENT_LINK,
    OCT_MAT_ROUNDED_EDGES_RADIUS,
    OCT_MATERIAL_ROUNDEDGE_LINK,

    OCT_MATERIAL_AFFECT_ALPHA,
    OCT_MAT_USE_COMMON,
    OCT_MAT_BRDF_MODEL,
    OCT_MAT_USE_SPECULAR_MAP,
    OCT_MAT_SPECULAR_MAP_LINK,
    OCT_MATERIAL_INDEX_N,
    OCT_MATERIAL_INDEX_K,
    OCT_MAT_ANISOTROPY_FLOAT,
    OCT_MAT_ANISOTROPY_ROTATION_LINK,
    OCT_MAT_TOON_LIGHT_MODE,
    OCT_MAT_TOON_DIFFUSE_RAMP,
    OCT_MAT_TOON_SPECULAR_RAMP,
    OCT_MAT_TOON_OUTLINE_COLOR,
    OCT_MAT_TOON_OUTLINE_THICKNESS,
    OCT_MAT_USE_ANISO,
    OCT_MAT_USE_TOON,

    OCT_POINTER0,

    OCT_MAT_ID,
    OCT_TIMER,
    OCT_MATERIAL_VTXMAP_RES,
    OCT_MATERIAL_VTXMAP_BLUR,

    OCT_MAT_USE_SHEEN,
    OCT_MAT_SHEEN_LINK,

    OCT_MAT_METALLIC_MODE,
    OCT_MATERIAL_GR_INDEX_N,
    OCT_MATERIAL_GR_INDEX_K,
    OCT_MATERIAL_BL_INDEX_N,
    OCT_MATERIAL_BL_INDEX_K,

    OCT_MAT_SHEEN_ROUGH_FLOAT,
    OCT_DIELECTRIC_INDEX,
    OCT_MAT_SPECULAR_MAP_FLOAT,

    OCT_MAT_USE_COATING,
    OCT_MAT_COATING_LINK,
    OCT_MAT_COATING_ROUGHNESS_FLOAT,
    OCT_MAT_COATING_INDEX,
    OCT_MAT_USE_BASEIOR,
    OCT_MAT_1_DIV_IOR_LINK,
    OCT_MAT_COATING_MAP_FLOAT,
    OCT_MAT_COATING_ROUGHNESS_LINK,
    OCT_MAT_COATING_BUMP_LINK,
    OCT_MAT_COATING_NORMAL_LINK,

    OCT_MAT_SHEEN_MAP_FLOAT,
    OCT_MAT_SHEEN_ROUGHNESS_LINK,
    OCT_MAT_SHEEN_BUMP_LINK,
    OCT_MAT_SHEEN_NORMAL_LINK,

    OCT_MATERIAL_THIN_WALL,
    OCT_MAT_USE_MATERIAL_LAYER,
    OCT_MAT_MATERIAL_LAYER,

    OCT_MAT_USE_ROUNDEDGES,
    UNIVMAT_TRANSMISSION_TYPE,


//    OCT_MAT_ROUNDED_EDGES_MODE,
//    OCT_MAT_ROUNDED_EDGES_ROUNDNESS,
//    OCT_MAT_ROUNDED_EDGES_CONS_OTHERS,


    ID_MATERIAL_DIFFUSE_GROUP,
    ID_MATERIAL_SPECULAR_GROUP,
    ID_MATERIAL_SPECULAR_MAP_GROUP,
    ID_MATERIAL_ROUGHNESS_GROUP,
    ID_MATERIAL_REFLECTION_GROUP,
    ID_MATERIAL_FILMINDEX_GROUP,
    ID_MATERIAL_FILMWIDTH_GROUP,
    ID_MATERIAL_BUMP_GROUP,
    ID_MATERIAL_NORMAL_GROUP,
    ID_MATERIAL_OPACITY_GROUP,
    ID_MATERIAL_DISPERSION_GROUP,
    ID_MATERIAL_INDEX_GROUP,
    ID_MATERIAL_TRANSMISSION_GROUP,
    ID_MATERIAL_EMISSION_GROUP,
    ID_MATERIAL_MEDIUM_GROUP,
    ID_MATERIAL_FAKESHADOWS_GROUP,
    ID_MATERIAL_DISP_GROUP,
    ID_MATERIAL_COMMON_GROUP,
    ID_MATERIAL_ANISOTROPY_GROUP,
    ID_MATERIAL_TOON_GROUP,
    ID_MATERIAL_SHEEN_GROUP,
    ID_MATERIAL_COATING_GROUP,
    OCT_MAT_COATING_MAP_ROUGH_GROUP,
    OCT_MAT_COATING_MAP_FLOAT_GROUP,
    ID_MATERIAL_BASE_IOR_GROUP,
    ID_MATERIAL_SPECULAR_MAP_FLOAT_GROUP,
    OCT_MAT_SHEEN_MAP_FLOAT_GROUP,
    OCT_MAT_SHEEN_ROUGHNESS_GROUP,
    ID_MATERIAL_ROUNDEDGES_GROUP,
    ID_MATERIAL_LAYER_GROUP,

    ID_MATERIAL_ADD_BB_EMIS,
    ID_MATERIAL_ADD_TEX_EMIS,

    ID_MATERIAL_ADD_ABS_MEDIUM,
    ID_MATERIAL_ADD_SCT_MEDIUM,
    ID_MATERIAL_ADD_RND_MEDIUM,

    ID_MATERIAL_ADD_DISPLACEMENT,
    OCT_MAT_ADD_TOON_DIFFUSE_RAMP_BTN,
    OCT_MAT_ADD_TOON_SPECULAR_RAMP_BTN,
    OCT_MAT_ADD_SPECULAR_MAP_BTN,
    OCT_MAT_ADD_COATING_MAP_BTN,
    OCT_MAT_ADD_COATING_ROUGHNESS_BTN,
    OCT_MAT_ADD_SHEEN_MAP_BTN,
    OCT_MAT_ADD_SHEEN_ROUGH_BTN,
    OCT_MAT_ADD_MATERIAL_LAYER_BTN,
    OCT_MAT_REMOVE_MATERIAL_LAYER_BTN,
    OCT_MATERIAL_ROUNDEDGE_ADD_BTN,
    ID_MATERIAL_MEDIUM_BTN_GROUP,
    ID_MATERIAL_INDEX2_GROUP,

    ID_OCT_MATERIALGROUP_EDITOR,
    OCT_MATERIAL_EDITORDISPLAY,
    OCT_MATERIAL_DIFFUSE_LINK2,
    OCT_MATERIAL_HELPBUTTON,
    OCT_MATERIAL_NODE_EDITOR,


    OCT_MAT_METAL = 2514,
    OCT_MAT_TOON = 2515,
    OCT_MAT_UNIVERSAL = 2516,

    OCTANE_MATTE_MODE   = 3150,
    OCTANE_MATTE_MODE1  = 0,
    OCTANE_MATTE_MODE2  = 1,
    OCTANE_MATTE_MODE3  = 2,

    OCT_MAT_METAL_REFL_ARTISTIC=0,
    OCT_MAT_METAL_REFL_IOR_COLOR=1,
    OCT_MAT_METAL_REFL_RGB_IOR=2,

    UNIVMAT_TRANSMISSION_TYPE_SPECULAR=0,
    UNIVMAT_TRANSMISSION_TYPE_DIFFUSE=1,
    UNIVMAT_TRANSMISSION_TYPE_THINWALL=2,

    OCT_MAT_BRDF_OCTANE = 0,
    OCT_MAT_BRDF_BECKMANN = 1,
    OCT_MAT_BRDF_GGX = 2,
    OCT_MAT_BRDF_WARD = 3,

    OCT_MAT_TOON_LM_TOON_LIGHTS=0,
    OCT_MAT_TOON_LM_CAMERA_LIGHTS=1,

    OCT_MATERIAL_PREVIEWSIZE                = 500,
    OCT_MATERIAL_PREVIEWSIZE_DEF            = 0,
    OCT_MATERIAL_PREVIEWSIZE_NO_SCALE       = 1,
    OCT_MATERIAL_PREVIEWSIZE_64             = 6,
    OCT_MATERIAL_PREVIEWSIZE_128            = 7,
    OCT_MATERIAL_PREVIEWSIZE_256            = 8,
    OCT_MATERIAL_PREVIEWSIZE_512            = 9,
    OCT_MATERIAL_PREVIEWSIZE_1024           = 10,
    OCT_MATERIAL_PREVIEWSIZE_2048           = 11,
    OCT_MATERIAL_PREVIEWSIZE_4096           = 12,
    OCT_MATERIAL_PREVIEWSIZE_8192           = 13,
    OCT_MATERIAL_PREVIEWSIZE_16384          = 14,

    OCT_MATERIAL_PREVIEWSIZE_COMBINED       = 0,
    OCT_MATERIAL_PREVIEWSIZE_COLOR          = 1,
    OCT_MATERIAL_PREVIEWSIZE_DIFFUSION      = 2,
    OCT_MATERIAL_PREVIEWSIZE_LUMINANCE      = 3,
    OCT_MATERIAL_PREVIEWSIZE_BUMP           = 4,
    OCT_MATERIAL_PREVIEWSIZE_NORMAL         = 5,
    OCT_MATERIAL_PREVIEWSIZE_ALPHA          = 6,
    OCT_MATERIAL_PREVIEWSIZE_TRANSPARENCY   = 7,
    OCT_MATERIAL_PREVIEWSIZE_DISPLACEMENT   = 8,
    OCT_MATERIAL_PREVIEWSIZE_REFLECTION     = 9,
    OCT_MATERIAL_PREVIEWSIZE_ENVIRONMENT    = 10,
    OCT_MATERIAL_PREVIEWSIZE_SPECULARCOLOR  = 11,

    OCT_MATERIAL_ANIMATEPREVIEW = 501,
    OCT_MATERIAL_SHADER2TEXTURE	= 502,

    OCT_MATERIAL_DISABLE_OPENGL=2700,

    OCT_PAINT_COUNTER=98999,
    OCT_NE_SAVER=99000,
    OCT_POINTER=99001,
    OCT_CHECK=99002,
    OCT_COPYHELPER=99004,
    OCT_COPYMIX1=99005,
    OCT_COPYMIX2=99006,
    OCT_STACKED_MAT=99007,
    OCT_INST_ORDER_LINKER=99008,
    OCT_USE_THREAD=99009,
    C4DMAT_POINTER=99010,
    OCT_GRAPH_SAVER=99011,
    CLICK_ME,

//    OCT_UNIQUE_ID=99020,
    OCT_UNIQUE_ID=1036442,
    OCT_POINTER2=0,
    OCT_LINKID=1,

    //OCT_POINTER2=0,
    //OCT_LINKID2=1,

};

#endif
