Blender V5.0
types.h File Reference

Go to the source code of this file.

Macros

#define SVM_STACK_SIZE   255
#define SVM_STACK_INVALID   255
#define SVM_BUMP_EVAL_STATE_SIZE   10
#define SHADER_NODE_TYPE(name)
#define CLOSURE_IS_BSDF(type)
#define CLOSURE_IS_BSDF_DIFFUSE(type)
#define CLOSURE_IS_BSDF_GLOSSY(type)
#define CLOSURE_IS_BSDF_TRANSMISSION(type)
#define CLOSURE_IS_BSDF_SINGULAR(type)
#define CLOSURE_IS_BSDF_TRANSPARENT(type)
#define CLOSURE_IS_BSDF_MULTISCATTER(type)
#define CLOSURE_IS_BSDF_MICROFACET(type)
#define CLOSURE_IS_BSDF_OR_BSSRDF(type)
#define CLOSURE_IS_BSSRDF(type)
#define CLOSURE_IS_VOLUME(type)
#define CLOSURE_IS_VOLUME_SCATTER(type)
#define CLOSURE_IS_VOLUME_ABSORPTION(type)
#define CLOSURE_IS_HOLDOUT(type)
#define CLOSURE_IS_PHASE(type)
#define CLOSURE_IS_REFRACTION(type)
#define CLOSURE_IS_GLASS(type)
#define CLOSURE_IS_PRINCIPLED(type)
#define CLOSURE_IS_RAY_PORTAL(type)
#define CLOSURE_WEIGHT_CUTOFF   1e-5f
#define BSDF_ROUGHNESS_SQ_THRESH   2e-10f
#define THINFILM_THICKNESS_CUTOFF   0.1f

Enumerations

enum  ShaderNodeType { NODE_NUM }
enum  NodeAttributeOutputType { NODE_ATTR_OUTPUT_FLOAT3 = 0 , NODE_ATTR_OUTPUT_FLOAT , NODE_ATTR_OUTPUT_FLOAT_ALPHA }
enum  NodeAttributeType {
  NODE_ATTR_FLOAT = 0 , NODE_ATTR_FLOAT2 , NODE_ATTR_FLOAT3 , NODE_ATTR_FLOAT4 ,
  NODE_ATTR_RGBA , NODE_ATTR_MATRIX
}
enum  NodeGeometry {
  NODE_GEOM_P = 0 , NODE_GEOM_N , NODE_GEOM_T , NODE_GEOM_I ,
  NODE_GEOM_Ng , NODE_GEOM_uv
}
enum  NodeObjectInfo {
  NODE_INFO_OB_LOCATION , NODE_INFO_OB_COLOR , NODE_INFO_OB_ALPHA , NODE_INFO_OB_INDEX ,
  NODE_INFO_MAT_INDEX , NODE_INFO_OB_RANDOM
}
enum  NodeParticleInfo {
  NODE_INFO_PAR_INDEX , NODE_INFO_PAR_RANDOM , NODE_INFO_PAR_AGE , NODE_INFO_PAR_LIFETIME ,
  NODE_INFO_PAR_LOCATION , NODE_INFO_PAR_SIZE , NODE_INFO_PAR_VELOCITY , NODE_INFO_PAR_ANGULAR_VELOCITY
}
enum  NodeHairInfo {
  NODE_INFO_CURVE_IS_STRAND , NODE_INFO_CURVE_INTERCEPT , NODE_INFO_CURVE_LENGTH , NODE_INFO_CURVE_THICKNESS ,
  NODE_INFO_CURVE_TANGENT_NORMAL , NODE_INFO_CURVE_RANDOM
}
enum  NodePointInfo { NODE_INFO_POINT_POSITION , NODE_INFO_POINT_RADIUS , NODE_INFO_POINT_RANDOM }
enum  NodeLightPath {
  NODE_LP_camera = 0 , NODE_LP_shadow , NODE_LP_diffuse , NODE_LP_glossy ,
  NODE_LP_singular , NODE_LP_reflection , NODE_LP_transmission , NODE_LP_volume_scatter ,
  NODE_LP_backfacing , NODE_LP_ray_length , NODE_LP_ray_depth , NODE_LP_ray_diffuse ,
  NODE_LP_ray_glossy , NODE_LP_ray_transparent , NODE_LP_ray_transmission , NODE_LP_ray_portal
}
enum  NodeLightFalloff { NODE_LIGHT_FALLOFF_QUADRATIC , NODE_LIGHT_FALLOFF_LINEAR , NODE_LIGHT_FALLOFF_CONSTANT }
enum  NodeTexCoord {
  NODE_TEXCO_NORMAL , NODE_TEXCO_OBJECT , NODE_TEXCO_OBJECT_WITH_TRANSFORM , NODE_TEXCO_CAMERA ,
  NODE_TEXCO_WINDOW , NODE_TEXCO_REFLECTION , NODE_TEXCO_DUPLI_GENERATED , NODE_TEXCO_DUPLI_UV ,
  NODE_TEXCO_VOLUME_GENERATED
}
enum  NodeMix {
  NODE_MIX_BLEND = 0 , NODE_MIX_ADD , NODE_MIX_MUL , NODE_MIX_SUB ,
  NODE_MIX_SCREEN , NODE_MIX_DIV , NODE_MIX_DIFF , NODE_MIX_DARK ,
  NODE_MIX_LIGHT , NODE_MIX_OVERLAY , NODE_MIX_DODGE , NODE_MIX_BURN ,
  NODE_MIX_HUE , NODE_MIX_SAT , NODE_MIX_VAL , NODE_MIX_COL ,
  NODE_MIX_SOFT , NODE_MIX_LINEAR , NODE_MIX_EXCLUSION , NODE_MIX_CLAMP
}
enum  NodeMathType {
  NODE_MATH_ADD , NODE_MATH_SUBTRACT , NODE_MATH_MULTIPLY , NODE_MATH_DIVIDE ,
  NODE_MATH_SINE , NODE_MATH_COSINE , NODE_MATH_TANGENT , NODE_MATH_ARCSINE ,
  NODE_MATH_ARCCOSINE , NODE_MATH_ARCTANGENT , NODE_MATH_POWER , NODE_MATH_LOGARITHM ,
  NODE_MATH_MINIMUM , NODE_MATH_MAXIMUM , NODE_MATH_ROUND , NODE_MATH_LESS_THAN ,
  NODE_MATH_GREATER_THAN , NODE_MATH_MODULO , NODE_MATH_ABSOLUTE , NODE_MATH_ARCTAN2 ,
  NODE_MATH_FLOOR , NODE_MATH_CEIL , NODE_MATH_FRACTION , NODE_MATH_SQRT ,
  NODE_MATH_INV_SQRT , NODE_MATH_SIGN , NODE_MATH_EXPONENT , NODE_MATH_RADIANS ,
  NODE_MATH_DEGREES , NODE_MATH_SINH , NODE_MATH_COSH , NODE_MATH_TANH ,
  NODE_MATH_TRUNC , NODE_MATH_SNAP , NODE_MATH_WRAP , NODE_MATH_COMPARE ,
  NODE_MATH_MULTIPLY_ADD , NODE_MATH_PINGPONG , NODE_MATH_SMOOTH_MIN , NODE_MATH_SMOOTH_MAX ,
  NODE_MATH_FLOORED_MODULO
}
enum  NodeVectorMathType {
  NODE_VECTOR_MATH_ADD , NODE_VECTOR_MATH_SUBTRACT , NODE_VECTOR_MATH_MULTIPLY , NODE_VECTOR_MATH_DIVIDE ,
  NODE_VECTOR_MATH_CROSS_PRODUCT , NODE_VECTOR_MATH_PROJECT , NODE_VECTOR_MATH_REFLECT , NODE_VECTOR_MATH_DOT_PRODUCT ,
  NODE_VECTOR_MATH_DISTANCE , NODE_VECTOR_MATH_LENGTH , NODE_VECTOR_MATH_SCALE , NODE_VECTOR_MATH_NORMALIZE ,
  NODE_VECTOR_MATH_SNAP , NODE_VECTOR_MATH_FLOOR , NODE_VECTOR_MATH_CEIL , NODE_VECTOR_MATH_MODULO ,
  NODE_VECTOR_MATH_FRACTION , NODE_VECTOR_MATH_ABSOLUTE , NODE_VECTOR_MATH_MINIMUM , NODE_VECTOR_MATH_MAXIMUM ,
  NODE_VECTOR_MATH_WRAP , NODE_VECTOR_MATH_SINE , NODE_VECTOR_MATH_COSINE , NODE_VECTOR_MATH_TANGENT ,
  NODE_VECTOR_MATH_REFRACT , NODE_VECTOR_MATH_FACEFORWARD , NODE_VECTOR_MATH_MULTIPLY_ADD , NODE_VECTOR_MATH_POWER ,
  NODE_VECTOR_MATH_SIGN
}
enum  NodeClampType { NODE_CLAMP_MINMAX , NODE_CLAMP_RANGE }
enum  NodeMapRangeType { NODE_MAP_RANGE_LINEAR , NODE_MAP_RANGE_STEPPED , NODE_MAP_RANGE_SMOOTHSTEP , NODE_MAP_RANGE_SMOOTHERSTEP }
enum  NodeMappingType { NODE_MAPPING_TYPE_POINT , NODE_MAPPING_TYPE_TEXTURE , NODE_MAPPING_TYPE_VECTOR , NODE_MAPPING_TYPE_NORMAL }
enum  NodeVectorRotateType {
  NODE_VECTOR_ROTATE_TYPE_AXIS , NODE_VECTOR_ROTATE_TYPE_AXIS_X , NODE_VECTOR_ROTATE_TYPE_AXIS_Y , NODE_VECTOR_ROTATE_TYPE_AXIS_Z ,
  NODE_VECTOR_ROTATE_TYPE_EULER_XYZ
}
enum  NodeVectorTransformType { NODE_VECTOR_TRANSFORM_TYPE_VECTOR , NODE_VECTOR_TRANSFORM_TYPE_POINT , NODE_VECTOR_TRANSFORM_TYPE_NORMAL }
enum  NodeVectorTransformConvertSpace { NODE_VECTOR_TRANSFORM_CONVERT_SPACE_WORLD , NODE_VECTOR_TRANSFORM_CONVERT_SPACE_OBJECT , NODE_VECTOR_TRANSFORM_CONVERT_SPACE_CAMERA }
enum  NodeConvert {
  NODE_CONVERT_FV , NODE_CONVERT_FI , NODE_CONVERT_CF , NODE_CONVERT_CI ,
  NODE_CONVERT_VF , NODE_CONVERT_VI , NODE_CONVERT_IF , NODE_CONVERT_IV
}
enum  NodeNoiseType {
  NODE_NOISE_MULTIFRACTAL , NODE_NOISE_FBM , NODE_NOISE_HYBRID_MULTIFRACTAL , NODE_NOISE_RIDGED_MULTIFRACTAL ,
  NODE_NOISE_HETERO_TERRAIN
}
enum  NodeGaborType { NODE_GABOR_TYPE_2D , NODE_GABOR_TYPE_3D }
enum  NodeWaveType { NODE_WAVE_BANDS , NODE_WAVE_RINGS }
enum  NodeWaveBandsDirection { NODE_WAVE_BANDS_DIRECTION_X , NODE_WAVE_BANDS_DIRECTION_Y , NODE_WAVE_BANDS_DIRECTION_Z , NODE_WAVE_BANDS_DIRECTION_DIAGONAL }
enum  NodeWaveRingsDirection { NODE_WAVE_RINGS_DIRECTION_X , NODE_WAVE_RINGS_DIRECTION_Y , NODE_WAVE_RINGS_DIRECTION_Z , NODE_WAVE_RINGS_DIRECTION_SPHERICAL }
enum  NodeWaveProfile { NODE_WAVE_PROFILE_SIN , NODE_WAVE_PROFILE_SAW , NODE_WAVE_PROFILE_TRI }
enum  NodeSkyType { NODE_SKY_PREETHAM , NODE_SKY_HOSEK , NODE_SKY_SINGLE_SCATTERING , NODE_SKY_MULTIPLE_SCATTERING }
enum  NodeGradientType {
  NODE_BLEND_LINEAR , NODE_BLEND_QUADRATIC , NODE_BLEND_EASING , NODE_BLEND_DIAGONAL ,
  NODE_BLEND_RADIAL , NODE_BLEND_QUADRATIC_SPHERE , NODE_BLEND_SPHERICAL
}
enum  NodeVoronoiDistanceMetric { NODE_VORONOI_EUCLIDEAN , NODE_VORONOI_MANHATTAN , NODE_VORONOI_CHEBYCHEV , NODE_VORONOI_MINKOWSKI }
enum  NodeVoronoiFeature {
  NODE_VORONOI_F1 , NODE_VORONOI_F2 , NODE_VORONOI_SMOOTH_F1 , NODE_VORONOI_DISTANCE_TO_EDGE ,
  NODE_VORONOI_N_SPHERE_RADIUS
}
enum  NodeBlendWeightType { NODE_LAYER_WEIGHT_FRESNEL , NODE_LAYER_WEIGHT_FACING }
enum  NodeTangentDirectionType { NODE_TANGENT_RADIAL , NODE_TANGENT_UVMAP }
enum  NodeTangentAxis { NODE_TANGENT_AXIS_X , NODE_TANGENT_AXIS_Y , NODE_TANGENT_AXIS_Z }
enum  NodeNormalMapSpace {
  NODE_NORMAL_MAP_TANGENT , NODE_NORMAL_MAP_OBJECT , NODE_NORMAL_MAP_WORLD , NODE_NORMAL_MAP_BLENDER_OBJECT ,
  NODE_NORMAL_MAP_BLENDER_WORLD
}
enum  NodeImageProjection { NODE_IMAGE_PROJ_FLAT = 0 , NODE_IMAGE_PROJ_BOX = 1 , NODE_IMAGE_PROJ_SPHERE = 2 , NODE_IMAGE_PROJ_TUBE = 3 }
enum  NodeImageFlags { NODE_IMAGE_COMPRESS_AS_SRGB = 1 , NODE_IMAGE_ALPHA_UNASSOCIATE = 2 }
enum  NodeEnvironmentProjection { NODE_ENVIRONMENT_EQUIRECTANGULAR = 0 , NODE_ENVIRONMENT_MIRROR_BALL = 1 }
enum  NodeBumpOffset { NODE_BUMP_OFFSET_CENTER , NODE_BUMP_OFFSET_DX , NODE_BUMP_OFFSET_DY }
enum  NodeAO { NODE_AO_ONLY_LOCAL = (1 << 0) , NODE_AO_INSIDE = (1 << 1) , NODE_AO_GLOBAL_RADIUS = (1 << 2) }
enum  ShaderType { SHADER_TYPE_SURFACE , SHADER_TYPE_VOLUME , SHADER_TYPE_DISPLACEMENT , SHADER_TYPE_BUMP }
enum  NodePrincipledHairModel { NODE_PRINCIPLED_HAIR_CHIANG = 0 , NODE_PRINCIPLED_HAIR_HUANG = 1 , NODE_PRINCIPLED_HAIR_MODEL_NUM }
enum  NodePrincipledHairParametrization { NODE_PRINCIPLED_HAIR_REFLECTANCE = 0 , NODE_PRINCIPLED_HAIR_PIGMENT_CONCENTRATION = 1 , NODE_PRINCIPLED_HAIR_DIRECT_ABSORPTION = 2 , NODE_PRINCIPLED_HAIR_PARAMETRIZATION_NUM }
enum  NodeCombSepColorType { NODE_COMBSEP_COLOR_RGB , NODE_COMBSEP_COLOR_HSV , NODE_COMBSEP_COLOR_HSL }
enum  ClosureType {
  CLOSURE_NONE_ID , CLOSURE_BSDF_ID , CLOSURE_BSDF_DIFFUSE_ID , CLOSURE_BSDF_OREN_NAYAR_ID ,
  CLOSURE_BSDF_BURLEY_ID , CLOSURE_BSDF_DIFFUSE_RAMP_ID , CLOSURE_BSDF_SHEEN_ID , CLOSURE_BSDF_DIFFUSE_TOON_ID ,
  CLOSURE_BSDF_TRANSLUCENT_ID , CLOSURE_BSDF_PHYSICAL_CONDUCTOR , CLOSURE_BSDF_F82_CONDUCTOR , CLOSURE_BSDF_MICROFACET_GGX_ID ,
  CLOSURE_BSDF_MICROFACET_BECKMANN_ID , CLOSURE_BSDF_MICROFACET_MULTI_GGX_ID , CLOSURE_BSDF_ASHIKHMIN_SHIRLEY_ID , CLOSURE_BSDF_ASHIKHMIN_VELVET_ID ,
  CLOSURE_BSDF_PHONG_RAMP_ID , CLOSURE_BSDF_GLOSSY_TOON_ID , CLOSURE_BSDF_HAIR_REFLECTION_ID , CLOSURE_BSDF_MICROFACET_BECKMANN_REFRACTION_ID ,
  CLOSURE_BSDF_MICROFACET_GGX_REFRACTION_ID , CLOSURE_BSDF_HAIR_TRANSMISSION_ID , CLOSURE_BSDF_MICROFACET_BECKMANN_GLASS_ID , CLOSURE_BSDF_MICROFACET_GGX_GLASS_ID ,
  CLOSURE_BSDF_MICROFACET_MULTI_GGX_GLASS_ID , CLOSURE_BSDF_HAIR_CHIANG_ID , CLOSURE_BSDF_HAIR_HUANG_ID , CLOSURE_BSDF_RAY_PORTAL_ID ,
  CLOSURE_BSDF_TRANSPARENT_ID , CLOSURE_BSSRDF_BURLEY_ID , CLOSURE_BSSRDF_RANDOM_WALK_ID , CLOSURE_BSSRDF_RANDOM_WALK_SKIN_ID ,
  CLOSURE_HOLDOUT_ID , CLOSURE_VOLUME_ID , CLOSURE_VOLUME_ABSORPTION_ID , CLOSURE_VOLUME_HENYEY_GREENSTEIN_ID ,
  CLOSURE_VOLUME_MIE_ID , CLOSURE_VOLUME_FOURNIER_FORAND_ID , CLOSURE_VOLUME_RAYLEIGH_ID , CLOSURE_VOLUME_DRAINE_ID ,
  CLOSURE_BSDF_PRINCIPLED_ID , NBUILTIN_CLOSURES
}

Macro Definition Documentation

◆ BSDF_ROUGHNESS_SQ_THRESH

#define BSDF_ROUGHNESS_SQ_THRESH   2e-10f

Definition at line 527 of file device/cpu/globals.h.

◆ CLOSURE_IS_BSDF

#define CLOSURE_IS_BSDF ( type)
Value:
@ CLOSURE_BSDF_TRANSPARENT_ID
@ CLOSURE_NONE_ID

Definition at line 484 of file device/cpu/globals.h.

◆ CLOSURE_IS_BSDF_DIFFUSE

#define CLOSURE_IS_BSDF_DIFFUSE ( type)
Value:
@ CLOSURE_BSDF_DIFFUSE_ID
@ CLOSURE_BSDF_TRANSLUCENT_ID

Definition at line 485 of file device/cpu/globals.h.

◆ CLOSURE_IS_BSDF_GLOSSY

#define CLOSURE_IS_BSDF_GLOSSY ( type)
Value:
@ CLOSURE_BSDF_MICROFACET_GGX_ID
@ CLOSURE_BSDF_HAIR_HUANG_ID
@ CLOSURE_BSDF_HAIR_CHIANG_ID
@ CLOSURE_BSDF_HAIR_REFLECTION_ID

Definition at line 487 of file device/cpu/globals.h.

◆ CLOSURE_IS_BSDF_MICROFACET

#define CLOSURE_IS_BSDF_MICROFACET ( type)
Value:

Definition at line 499 of file device/cpu/globals.h.

◆ CLOSURE_IS_BSDF_MULTISCATTER

#define CLOSURE_IS_BSDF_MULTISCATTER ( type)
Value:

Definition at line 496 of file device/cpu/globals.h.

◆ CLOSURE_IS_BSDF_OR_BSSRDF

#define CLOSURE_IS_BSDF_OR_BSSRDF ( type)
Value:
@ CLOSURE_BSSRDF_RANDOM_WALK_SKIN_ID

Definition at line 505 of file device/cpu/globals.h.

◆ CLOSURE_IS_BSDF_SINGULAR

#define CLOSURE_IS_BSDF_SINGULAR ( type)
Value:

Definition at line 493 of file device/cpu/globals.h.

◆ CLOSURE_IS_BSDF_TRANSMISSION

#define CLOSURE_IS_BSDF_TRANSMISSION ( type)
Value:

Definition at line 490 of file device/cpu/globals.h.

◆ CLOSURE_IS_BSDF_TRANSPARENT

#define CLOSURE_IS_BSDF_TRANSPARENT ( type)
Value:

Definition at line 495 of file device/cpu/globals.h.

◆ CLOSURE_IS_BSSRDF

#define CLOSURE_IS_BSSRDF ( type)
Value:

Definition at line 507 of file device/cpu/globals.h.

◆ CLOSURE_IS_GLASS

#define CLOSURE_IS_GLASS ( type)

◆ CLOSURE_IS_HOLDOUT

#define CLOSURE_IS_HOLDOUT ( type)
Value:
@ CLOSURE_HOLDOUT_ID

Definition at line 513 of file device/cpu/globals.h.

◆ CLOSURE_IS_PHASE

#define CLOSURE_IS_PHASE ( type)
Value:
@ CLOSURE_VOLUME_HENYEY_GREENSTEIN_ID
@ CLOSURE_VOLUME_DRAINE_ID

Definition at line 514 of file device/cpu/globals.h.

◆ CLOSURE_IS_PRINCIPLED

#define CLOSURE_IS_PRINCIPLED ( type)
Value:
@ CLOSURE_BSDF_PRINCIPLED_ID

Definition at line 522 of file device/cpu/globals.h.

◆ CLOSURE_IS_RAY_PORTAL

#define CLOSURE_IS_RAY_PORTAL ( type)
Value:

Definition at line 523 of file device/cpu/globals.h.

◆ CLOSURE_IS_REFRACTION

#define CLOSURE_IS_REFRACTION ( type)

◆ CLOSURE_IS_VOLUME

#define CLOSURE_IS_VOLUME ( type)
Value:
@ CLOSURE_VOLUME_ID

Definition at line 509 of file device/cpu/globals.h.

◆ CLOSURE_IS_VOLUME_ABSORPTION

#define CLOSURE_IS_VOLUME_ABSORPTION ( type)
Value:
@ CLOSURE_VOLUME_ABSORPTION_ID

Definition at line 512 of file device/cpu/globals.h.

◆ CLOSURE_IS_VOLUME_SCATTER

#define CLOSURE_IS_VOLUME_SCATTER ( type)
Value:

Definition at line 510 of file device/cpu/globals.h.

◆ CLOSURE_WEIGHT_CUTOFF

#define CLOSURE_WEIGHT_CUTOFF   1e-5f

Definition at line 525 of file device/cpu/globals.h.

◆ SHADER_NODE_TYPE

#define SHADER_NODE_TYPE ( name)
Value:
const char * name

Definition at line 24 of file device/cpu/globals.h.

◆ SVM_BUMP_EVAL_STATE_SIZE

#define SVM_BUMP_EVAL_STATE_SIZE   10

Definition at line 18 of file device/cpu/globals.h.

◆ SVM_STACK_INVALID

#define SVM_STACK_INVALID   255

Definition at line 16 of file device/cpu/globals.h.

◆ SVM_STACK_SIZE

#define SVM_STACK_SIZE   255

Definition at line 14 of file device/cpu/globals.h.

◆ THINFILM_THICKNESS_CUTOFF

#define THINFILM_THICKNESS_CUTOFF   0.1f

Definition at line 528 of file device/cpu/globals.h.

Enumeration Type Documentation

◆ ClosureType

Enumerator
CLOSURE_NONE_ID 
CLOSURE_BSDF_ID 
CLOSURE_BSDF_DIFFUSE_ID 
CLOSURE_BSDF_OREN_NAYAR_ID 
CLOSURE_BSDF_BURLEY_ID 
CLOSURE_BSDF_DIFFUSE_RAMP_ID 
CLOSURE_BSDF_SHEEN_ID 
CLOSURE_BSDF_DIFFUSE_TOON_ID 
CLOSURE_BSDF_TRANSLUCENT_ID 
CLOSURE_BSDF_PHYSICAL_CONDUCTOR 
CLOSURE_BSDF_F82_CONDUCTOR 
CLOSURE_BSDF_MICROFACET_GGX_ID 
CLOSURE_BSDF_MICROFACET_BECKMANN_ID 
CLOSURE_BSDF_MICROFACET_MULTI_GGX_ID 
CLOSURE_BSDF_ASHIKHMIN_SHIRLEY_ID 
CLOSURE_BSDF_ASHIKHMIN_VELVET_ID 
CLOSURE_BSDF_PHONG_RAMP_ID 
CLOSURE_BSDF_GLOSSY_TOON_ID 
CLOSURE_BSDF_HAIR_REFLECTION_ID 
CLOSURE_BSDF_MICROFACET_BECKMANN_REFRACTION_ID 
CLOSURE_BSDF_MICROFACET_GGX_REFRACTION_ID 
CLOSURE_BSDF_HAIR_TRANSMISSION_ID 
CLOSURE_BSDF_MICROFACET_BECKMANN_GLASS_ID 
CLOSURE_BSDF_MICROFACET_GGX_GLASS_ID 
CLOSURE_BSDF_MICROFACET_MULTI_GGX_GLASS_ID 
CLOSURE_BSDF_HAIR_CHIANG_ID 
CLOSURE_BSDF_HAIR_HUANG_ID 
CLOSURE_BSDF_RAY_PORTAL_ID 
CLOSURE_BSDF_TRANSPARENT_ID 
CLOSURE_BSSRDF_BURLEY_ID 
CLOSURE_BSSRDF_RANDOM_WALK_ID 
CLOSURE_BSSRDF_RANDOM_WALK_SKIN_ID 
CLOSURE_HOLDOUT_ID 
CLOSURE_VOLUME_ID 
CLOSURE_VOLUME_ABSORPTION_ID 
CLOSURE_VOLUME_HENYEY_GREENSTEIN_ID 
CLOSURE_VOLUME_MIE_ID 
CLOSURE_VOLUME_FOURNIER_FORAND_ID 
CLOSURE_VOLUME_RAYLEIGH_ID 
CLOSURE_VOLUME_DRAINE_ID 
CLOSURE_BSDF_PRINCIPLED_ID 
NBUILTIN_CLOSURES 

Definition at line 416 of file kernel/svm/types.h.

◆ NodeAO

enum NodeAO
Enumerator
NODE_AO_ONLY_LOCAL 
NODE_AO_INSIDE 
NODE_AO_GLOBAL_RADIUS 

Definition at line 382 of file kernel/svm/types.h.

◆ NodeAttributeOutputType

Enumerator
NODE_ATTR_OUTPUT_FLOAT3 
NODE_ATTR_OUTPUT_FLOAT 
NODE_ATTR_OUTPUT_FLOAT_ALPHA 

Definition at line 29 of file kernel/svm/types.h.

◆ NodeAttributeType

Enumerator
NODE_ATTR_FLOAT 
NODE_ATTR_FLOAT2 
NODE_ATTR_FLOAT3 
NODE_ATTR_FLOAT4 
NODE_ATTR_RGBA 
NODE_ATTR_MATRIX 

Definition at line 35 of file kernel/svm/types.h.

◆ NodeBlendWeightType

Enumerator
NODE_LAYER_WEIGHT_FRESNEL 
NODE_LAYER_WEIGHT_FACING 

Definition at line 345 of file kernel/svm/types.h.

◆ NodeBumpOffset

Enumerator
NODE_BUMP_OFFSET_CENTER 
NODE_BUMP_OFFSET_DX 
NODE_BUMP_OFFSET_DY 

Definition at line 376 of file kernel/svm/types.h.

◆ NodeClampType

Enumerator
NODE_CLAMP_MINMAX 
NODE_CLAMP_RANGE 

Definition at line 228 of file kernel/svm/types.h.

◆ NodeCombSepColorType

Enumerator
NODE_COMBSEP_COLOR_RGB 
NODE_COMBSEP_COLOR_HSV 
NODE_COMBSEP_COLOR_HSL 

Definition at line 408 of file kernel/svm/types.h.

◆ NodeConvert

Enumerator
NODE_CONVERT_FV 
NODE_CONVERT_FI 
NODE_CONVERT_CF 
NODE_CONVERT_CI 
NODE_CONVERT_VF 
NODE_CONVERT_VI 
NODE_CONVERT_IF 
NODE_CONVERT_IV 

Definition at line 267 of file kernel/svm/types.h.

◆ NodeEnvironmentProjection

Enumerator
NODE_ENVIRONMENT_EQUIRECTANGULAR 
NODE_ENVIRONMENT_MIRROR_BALL 

Definition at line 371 of file kernel/svm/types.h.

◆ NodeGaborType

Enumerator
NODE_GABOR_TYPE_2D 
NODE_GABOR_TYPE_3D 

Definition at line 286 of file kernel/svm/types.h.

◆ NodeGeometry

Enumerator
NODE_GEOM_P 
NODE_GEOM_N 
NODE_GEOM_T 
NODE_GEOM_I 
NODE_GEOM_Ng 
NODE_GEOM_uv 

Definition at line 44 of file kernel/svm/types.h.

◆ NodeGradientType

Enumerator
NODE_BLEND_LINEAR 
NODE_BLEND_QUADRATIC 
NODE_BLEND_EASING 
NODE_BLEND_DIAGONAL 
NODE_BLEND_RADIAL 
NODE_BLEND_QUADRATIC_SPHERE 
NODE_BLEND_SPHERICAL 

Definition at line 320 of file kernel/svm/types.h.

◆ NodeHairInfo

Enumerator
NODE_INFO_CURVE_IS_STRAND 
NODE_INFO_CURVE_INTERCEPT 
NODE_INFO_CURVE_LENGTH 
NODE_INFO_CURVE_THICKNESS 
NODE_INFO_CURVE_TANGENT_NORMAL 
NODE_INFO_CURVE_RANDOM 

Definition at line 74 of file kernel/svm/types.h.

◆ NodeImageFlags

Enumerator
NODE_IMAGE_COMPRESS_AS_SRGB 
NODE_IMAGE_ALPHA_UNASSOCIATE 

Definition at line 366 of file kernel/svm/types.h.

◆ NodeImageProjection

Enumerator
NODE_IMAGE_PROJ_FLAT 
NODE_IMAGE_PROJ_BOX 
NODE_IMAGE_PROJ_SPHERE 
NODE_IMAGE_PROJ_TUBE 

Definition at line 359 of file kernel/svm/types.h.

◆ NodeLightFalloff

Enumerator
NODE_LIGHT_FALLOFF_QUADRATIC 
NODE_LIGHT_FALLOFF_LINEAR 
NODE_LIGHT_FALLOFF_CONSTANT 

Definition at line 108 of file kernel/svm/types.h.

◆ NodeLightPath

Enumerator
NODE_LP_camera 
NODE_LP_shadow 
NODE_LP_diffuse 
NODE_LP_glossy 
NODE_LP_singular 
NODE_LP_reflection 
NODE_LP_transmission 
NODE_LP_volume_scatter 
NODE_LP_backfacing 
NODE_LP_ray_length 
NODE_LP_ray_depth 
NODE_LP_ray_diffuse 
NODE_LP_ray_glossy 
NODE_LP_ray_transparent 
NODE_LP_ray_transmission 
NODE_LP_ray_portal 

Definition at line 89 of file kernel/svm/types.h.

◆ NodeMappingType

Enumerator
NODE_MAPPING_TYPE_POINT 
NODE_MAPPING_TYPE_TEXTURE 
NODE_MAPPING_TYPE_VECTOR 
NODE_MAPPING_TYPE_NORMAL 

Definition at line 240 of file kernel/svm/types.h.

◆ NodeMapRangeType

Enumerator
NODE_MAP_RANGE_LINEAR 
NODE_MAP_RANGE_STEPPED 
NODE_MAP_RANGE_SMOOTHSTEP 
NODE_MAP_RANGE_SMOOTHERSTEP 

Definition at line 233 of file kernel/svm/types.h.

◆ NodeMathType

Enumerator
NODE_MATH_ADD 
NODE_MATH_SUBTRACT 
NODE_MATH_MULTIPLY 
NODE_MATH_DIVIDE 
NODE_MATH_SINE 
NODE_MATH_COSINE 
NODE_MATH_TANGENT 
NODE_MATH_ARCSINE 
NODE_MATH_ARCCOSINE 
NODE_MATH_ARCTANGENT 
NODE_MATH_POWER 
NODE_MATH_LOGARITHM 
NODE_MATH_MINIMUM 
NODE_MATH_MAXIMUM 
NODE_MATH_ROUND 
NODE_MATH_LESS_THAN 
NODE_MATH_GREATER_THAN 
NODE_MATH_MODULO 
NODE_MATH_ABSOLUTE 
NODE_MATH_ARCTAN2 
NODE_MATH_FLOOR 
NODE_MATH_CEIL 
NODE_MATH_FRACTION 
NODE_MATH_SQRT 
NODE_MATH_INV_SQRT 
NODE_MATH_SIGN 
NODE_MATH_EXPONENT 
NODE_MATH_RADIANS 
NODE_MATH_DEGREES 
NODE_MATH_SINH 
NODE_MATH_COSH 
NODE_MATH_TANH 
NODE_MATH_TRUNC 
NODE_MATH_SNAP 
NODE_MATH_WRAP 
NODE_MATH_COMPARE 
NODE_MATH_MULTIPLY_ADD 
NODE_MATH_PINGPONG 
NODE_MATH_SMOOTH_MIN 
NODE_MATH_SMOOTH_MAX 
NODE_MATH_FLOORED_MODULO 

Definition at line 149 of file kernel/svm/types.h.

◆ NodeMix

enum NodeMix
Enumerator
NODE_MIX_BLEND 
NODE_MIX_ADD 
NODE_MIX_MUL 
NODE_MIX_SUB 
NODE_MIX_SCREEN 
NODE_MIX_DIV 
NODE_MIX_DIFF 
NODE_MIX_DARK 
NODE_MIX_LIGHT 
NODE_MIX_OVERLAY 
NODE_MIX_DODGE 
NODE_MIX_BURN 
NODE_MIX_HUE 
NODE_MIX_SAT 
NODE_MIX_VAL 
NODE_MIX_COL 
NODE_MIX_SOFT 
NODE_MIX_LINEAR 
NODE_MIX_EXCLUSION 
NODE_MIX_CLAMP 

Definition at line 126 of file kernel/svm/types.h.

◆ NodeNoiseType

Enumerator
NODE_NOISE_MULTIFRACTAL 
NODE_NOISE_FBM 
NODE_NOISE_HYBRID_MULTIFRACTAL 
NODE_NOISE_RIDGED_MULTIFRACTAL 
NODE_NOISE_HETERO_TERRAIN 

Definition at line 278 of file kernel/svm/types.h.

◆ NodeNormalMapSpace

Enumerator
NODE_NORMAL_MAP_TANGENT 
NODE_NORMAL_MAP_OBJECT 
NODE_NORMAL_MAP_WORLD 
NODE_NORMAL_MAP_BLENDER_OBJECT 
NODE_NORMAL_MAP_BLENDER_WORLD 

Definition at line 351 of file kernel/svm/types.h.

◆ NodeObjectInfo

Enumerator
NODE_INFO_OB_LOCATION 
NODE_INFO_OB_COLOR 
NODE_INFO_OB_ALPHA 
NODE_INFO_OB_INDEX 
NODE_INFO_MAT_INDEX 
NODE_INFO_OB_RANDOM 

Definition at line 53 of file kernel/svm/types.h.

◆ NodeParticleInfo

Enumerator
NODE_INFO_PAR_INDEX 
NODE_INFO_PAR_RANDOM 
NODE_INFO_PAR_AGE 
NODE_INFO_PAR_LIFETIME 
NODE_INFO_PAR_LOCATION 
NODE_INFO_PAR_SIZE 
NODE_INFO_PAR_VELOCITY 
NODE_INFO_PAR_ANGULAR_VELOCITY 

Definition at line 62 of file kernel/svm/types.h.

◆ NodePointInfo

Enumerator
NODE_INFO_POINT_POSITION 
NODE_INFO_POINT_RADIUS 
NODE_INFO_POINT_RANDOM 

Definition at line 83 of file kernel/svm/types.h.

◆ NodePrincipledHairModel

Enumerator
NODE_PRINCIPLED_HAIR_CHIANG 
NODE_PRINCIPLED_HAIR_HUANG 
NODE_PRINCIPLED_HAIR_MODEL_NUM 

Definition at line 395 of file kernel/svm/types.h.

◆ NodePrincipledHairParametrization

Enumerator
NODE_PRINCIPLED_HAIR_REFLECTANCE 
NODE_PRINCIPLED_HAIR_PIGMENT_CONCENTRATION 
NODE_PRINCIPLED_HAIR_DIRECT_ABSORPTION 
NODE_PRINCIPLED_HAIR_PARAMETRIZATION_NUM 

Definition at line 401 of file kernel/svm/types.h.

◆ NodeSkyType

Enumerator
NODE_SKY_PREETHAM 
NODE_SKY_HOSEK 
NODE_SKY_SINGLE_SCATTERING 
NODE_SKY_MULTIPLE_SCATTERING 

Definition at line 313 of file kernel/svm/types.h.

◆ NodeTangentAxis

Enumerator
NODE_TANGENT_AXIS_X 
NODE_TANGENT_AXIS_Y 
NODE_TANGENT_AXIS_Z 

Definition at line 349 of file kernel/svm/types.h.

◆ NodeTangentDirectionType

Enumerator
NODE_TANGENT_RADIAL 
NODE_TANGENT_UVMAP 

Definition at line 347 of file kernel/svm/types.h.

◆ NodeTexCoord

Enumerator
NODE_TEXCO_NORMAL 
NODE_TEXCO_OBJECT 
NODE_TEXCO_OBJECT_WITH_TRANSFORM 
NODE_TEXCO_CAMERA 
NODE_TEXCO_WINDOW 
NODE_TEXCO_REFLECTION 
NODE_TEXCO_DUPLI_GENERATED 
NODE_TEXCO_DUPLI_UV 
NODE_TEXCO_VOLUME_GENERATED 

Definition at line 114 of file kernel/svm/types.h.

◆ NodeVectorMathType

Enumerator
NODE_VECTOR_MATH_ADD 
NODE_VECTOR_MATH_SUBTRACT 
NODE_VECTOR_MATH_MULTIPLY 
NODE_VECTOR_MATH_DIVIDE 
NODE_VECTOR_MATH_CROSS_PRODUCT 
NODE_VECTOR_MATH_PROJECT 
NODE_VECTOR_MATH_REFLECT 
NODE_VECTOR_MATH_DOT_PRODUCT 
NODE_VECTOR_MATH_DISTANCE 
NODE_VECTOR_MATH_LENGTH 
NODE_VECTOR_MATH_SCALE 
NODE_VECTOR_MATH_NORMALIZE 
NODE_VECTOR_MATH_SNAP 
NODE_VECTOR_MATH_FLOOR 
NODE_VECTOR_MATH_CEIL 
NODE_VECTOR_MATH_MODULO 
NODE_VECTOR_MATH_FRACTION 
NODE_VECTOR_MATH_ABSOLUTE 
NODE_VECTOR_MATH_MINIMUM 
NODE_VECTOR_MATH_MAXIMUM 
NODE_VECTOR_MATH_WRAP 
NODE_VECTOR_MATH_SINE 
NODE_VECTOR_MATH_COSINE 
NODE_VECTOR_MATH_TANGENT 
NODE_VECTOR_MATH_REFRACT 
NODE_VECTOR_MATH_FACEFORWARD 
NODE_VECTOR_MATH_MULTIPLY_ADD 
NODE_VECTOR_MATH_POWER 
NODE_VECTOR_MATH_SIGN 

Definition at line 193 of file kernel/svm/types.h.

◆ NodeVectorRotateType

Enumerator
NODE_VECTOR_ROTATE_TYPE_AXIS 
NODE_VECTOR_ROTATE_TYPE_AXIS_X 
NODE_VECTOR_ROTATE_TYPE_AXIS_Y 
NODE_VECTOR_ROTATE_TYPE_AXIS_Z 
NODE_VECTOR_ROTATE_TYPE_EULER_XYZ 

Definition at line 247 of file kernel/svm/types.h.

◆ NodeVectorTransformConvertSpace

Enumerator
NODE_VECTOR_TRANSFORM_CONVERT_SPACE_WORLD 
NODE_VECTOR_TRANSFORM_CONVERT_SPACE_OBJECT 
NODE_VECTOR_TRANSFORM_CONVERT_SPACE_CAMERA 

Definition at line 261 of file kernel/svm/types.h.

◆ NodeVectorTransformType

Enumerator
NODE_VECTOR_TRANSFORM_TYPE_VECTOR 
NODE_VECTOR_TRANSFORM_TYPE_POINT 
NODE_VECTOR_TRANSFORM_TYPE_NORMAL 

Definition at line 255 of file kernel/svm/types.h.

◆ NodeVoronoiDistanceMetric

Enumerator
NODE_VORONOI_EUCLIDEAN 
NODE_VORONOI_MANHATTAN 
NODE_VORONOI_CHEBYCHEV 
NODE_VORONOI_MINKOWSKI 

Definition at line 330 of file kernel/svm/types.h.

◆ NodeVoronoiFeature

Enumerator
NODE_VORONOI_F1 
NODE_VORONOI_F2 
NODE_VORONOI_SMOOTH_F1 
NODE_VORONOI_DISTANCE_TO_EDGE 
NODE_VORONOI_N_SPHERE_RADIUS 

Definition at line 337 of file kernel/svm/types.h.

◆ NodeWaveBandsDirection

Enumerator
NODE_WAVE_BANDS_DIRECTION_X 
NODE_WAVE_BANDS_DIRECTION_Y 
NODE_WAVE_BANDS_DIRECTION_Z 
NODE_WAVE_BANDS_DIRECTION_DIAGONAL 

Definition at line 293 of file kernel/svm/types.h.

◆ NodeWaveProfile

Enumerator
NODE_WAVE_PROFILE_SIN 
NODE_WAVE_PROFILE_SAW 
NODE_WAVE_PROFILE_TRI 

Definition at line 307 of file kernel/svm/types.h.

◆ NodeWaveRingsDirection

Enumerator
NODE_WAVE_RINGS_DIRECTION_X 
NODE_WAVE_RINGS_DIRECTION_Y 
NODE_WAVE_RINGS_DIRECTION_Z 
NODE_WAVE_RINGS_DIRECTION_SPHERICAL 

Definition at line 300 of file kernel/svm/types.h.

◆ NodeWaveType

Enumerator
NODE_WAVE_BANDS 
NODE_WAVE_RINGS 

Definition at line 291 of file kernel/svm/types.h.

◆ ShaderNodeType

Enumerator
NODE_NUM 

Definition at line 22 of file kernel/svm/types.h.

◆ ShaderType

enum ShaderType
Enumerator
SHADER_TYPE_SURFACE 
SHADER_TYPE_VOLUME 
SHADER_TYPE_DISPLACEMENT 
SHADER_TYPE_BUMP 

Definition at line 388 of file kernel/svm/types.h.