Blender V4.3
DNA_material_types.h File Reference
#include "DNA_ID.h"
#include "DNA_defs.h"
#include "DNA_listBase.h"

Go to the source code of this file.

Classes

struct  TexPaintSlot
 
struct  MaterialGPencilStyle
 
struct  MaterialLineArt
 
struct  Material
 

Macros

#define MAX_MTEX   18
 
#define MAXMAT   (32767 - 1)
 

Typedefs

typedef struct TexPaintSlot TexPaintSlot
 
typedef struct MaterialGPencilStyle MaterialGPencilStyle
 
typedef enum eMaterialGPencilStyle_Flag eMaterialGPencilStyle_Flag
 
typedef enum eMaterialGPencilStyle_Mode eMaterialGPencilStyle_Mode
 
typedef struct MaterialLineArt MaterialLineArt
 
typedef enum eMaterialLineArtFlags eMaterialLineArtFlags
 
typedef struct Material Material
 
typedef enum ePreviewType ePreviewType
 

Enumerations

enum  eMaterialGPencilStyle_Flag {
  GP_MATERIAL_FILL_PATTERN = (1 << 0) , GP_MATERIAL_HIDE = (1 << 1) , GP_MATERIAL_LOCKED = (1 << 2) , GP_MATERIAL_HIDE_ONIONSKIN = (1 << 3) ,
  GP_MATERIAL_TEX_CLAMP = (1 << 4) , GP_MATERIAL_FILL_TEX_MIX = (1 << 5) , GP_MATERIAL_FLIP_FILL = (1 << 6) , GP_MATERIAL_STROKE_PATTERN = (1 << 7) ,
  GP_MATERIAL_STROKE_SHOW = (1 << 8) , GP_MATERIAL_FILL_SHOW = (1 << 9) , GP_MATERIAL_STROKE_TEX_MIX = (1 << 11) , GP_MATERIAL_DISABLE_STENCIL = (1 << 12) ,
  GP_MATERIAL_IS_STROKE_HOLDOUT = (1 << 13) , GP_MATERIAL_IS_FILL_HOLDOUT = (1 << 14)
}
 
enum  eMaterialGPencilStyle_Mode { GP_MATERIAL_MODE_LINE = 0 , GP_MATERIAL_MODE_DOT = 1 , GP_MATERIAL_MODE_SQUARE = 2 }
 
enum  eMaterialLineArtFlags { LRT_MATERIAL_MASK_ENABLED = (1 << 0) , LRT_MATERIAL_CUSTOM_OCCLUSION_EFFECTIVENESS = (1 << 1) , LRT_MATERIAL_CUSTOM_INTERSECTION_PRIORITY = (1 << 2) }
 
enum  { MA_IS_USED = 1 << 0 , MA_DS_EXPAND = 1 << 1 , MA_DS_SHOW_TEXS = 1 << 2 }
 
enum  {
  MA_RAMP_BLEND = 0 , MA_RAMP_ADD = 1 , MA_RAMP_MULT = 2 , MA_RAMP_SUB = 3 ,
  MA_RAMP_SCREEN = 4 , MA_RAMP_DIV = 5 , MA_RAMP_DIFF = 6 , MA_RAMP_DARK = 7 ,
  MA_RAMP_LIGHT = 8 , MA_RAMP_OVERLAY = 9 , MA_RAMP_DODGE = 10 , MA_RAMP_BURN = 11 ,
  MA_RAMP_HUE = 12 , MA_RAMP_SAT = 13 , MA_RAMP_VAL = 14 , MA_RAMP_COLOR = 15 ,
  MA_RAMP_SOFT = 16 , MA_RAMP_LINEAR = 17 , MA_RAMP_EXCLUSION = 18
}
 
enum  {
  TEXCO_ORCO = 1 << 0 , TEXCO_GLOB = 1 << 3 , TEXCO_UV = 1 << 4 , TEXCO_OBJECT = 1 << 5 ,
  TEXCO_WINDOW = 1 << 10 , TEXCO_STRAND = 1 << 13 , TEXCO_PARTICLE = 1 << 13
}
 
enum  { MAP_COL = 1 << 0 , MAP_ALPHA = 1 << 7 }
 
enum  ePreviewType {
  MA_FLAT = 0 , MA_SPHERE = 1 , MA_CUBE = 2 , MA_SHADERBALL = 3 ,
  MA_SPHERE_A = 4 , MA_TEXTURE = 5 , MA_LAMP = 6 , MA_SKY = 7 ,
  MA_HAIR = 10 , MA_ATMOS = 11 , MA_CLOTH = 12 , MA_FLUID = 13
}
 
enum  { MA_PREVIEW_WORLD = 1 << 0 }
 
enum  { MA_SURFACE_METHOD_DEFERRED = 0 , MA_SURFACE_METHOD_FORWARD = 1 }
 
enum  { MA_VOLUME_ISECT_FAST = 0 , MA_VOLUME_ISECT_ACCURATE = 1 }
 
enum  { MA_BM_SOLID = 0 , MA_BM_CLIP = 3 , MA_BM_HASHED = 4 , MA_BM_BLEND = 5 }
 
enum  {
  MA_BL_HIDE_BACKFACE = (1 << 0) , MA_BL_SS_REFRACTION = (1 << 1) , MA_BL_CULL_BACKFACE = (1 << 2) , MA_BL_TRANSLUCENCY = (1 << 3) ,
  MA_BL_LIGHTPROBE_VOLUME_DOUBLE_SIDED = (1 << 4) , MA_BL_CULL_BACKFACE_SHADOW = (1 << 5) , MA_BL_TRANSPARENT_SHADOW = (1 << 6) , MA_BL_THICKNESS_FROM_SHADOW = (1 << 7)
}
 
enum  { MA_BS_NONE = 0 , MA_BS_SOLID = 1 , MA_BS_CLIP = 2 , MA_BS_HASHED = 3 }
 
enum  { MA_DISPLACEMENT_BUMP = 0 , MA_DISPLACEMENT_DISPLACE = 1 , MA_DISPLACEMENT_BOTH = 2 }
 
enum  { MA_THICKNESS_SPHERE = 0 , MA_THICKNESS_SLAB = 1 }
 
enum  { GP_MATERIAL_STROKE_STYLE_SOLID = 0 , GP_MATERIAL_STROKE_STYLE_TEXTURE = 1 }
 
enum  { GP_MATERIAL_FILL_STYLE_SOLID = 0 , GP_MATERIAL_FILL_STYLE_GRADIENT = 1 , GP_MATERIAL_FILL_STYLE_CHECKER = 2 , GP_MATERIAL_FILL_STYLE_TEXTURE = 3 }
 
enum  { GP_MATERIAL_GRADIENT_LINEAR = 0 , GP_MATERIAL_GRADIENT_RADIAL = 1 }
 
enum  { GP_MATERIAL_FOLLOW_PATH = 0 , GP_MATERIAL_FOLLOW_OBJ = 1 , GP_MATERIAL_FOLLOW_FIXED = 2 }
 

Macro Definition Documentation

◆ MAX_MTEX

#define MAX_MTEX   18

Definition at line 16 of file DNA_material_types.h.

◆ MAXMAT

Typedef Documentation

◆ eMaterialGPencilStyle_Flag

◆ eMaterialGPencilStyle_Mode

◆ eMaterialLineArtFlags

◆ ePreviewType

◆ Material

typedef struct Material Material

◆ MaterialGPencilStyle

typedef struct MaterialGPencilStyle MaterialGPencilStyle

◆ MaterialLineArt

typedef struct MaterialLineArt MaterialLineArt

◆ TexPaintSlot

typedef struct TexPaintSlot TexPaintSlot

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

Material::flag

Enumerator
MA_IS_USED 

For render.

MA_DS_EXPAND 

For dope-sheet.

MA_DS_SHOW_TEXS 

For dope-sheet (texture stack expander) NOTE: this must have the same value as other texture stacks, otherwise anim-editors will not read correctly.

Definition at line 257 of file DNA_material_types.h.

◆ anonymous enum

anonymous enum
Enumerator
MA_RAMP_BLEND 
MA_RAMP_ADD 
MA_RAMP_MULT 
MA_RAMP_SUB 
MA_RAMP_SCREEN 
MA_RAMP_DIV 
MA_RAMP_DIFF 
MA_RAMP_DARK 
MA_RAMP_LIGHT 
MA_RAMP_OVERLAY 
MA_RAMP_DODGE 
MA_RAMP_BURN 
MA_RAMP_HUE 
MA_RAMP_SAT 
MA_RAMP_VAL 
MA_RAMP_COLOR 
MA_RAMP_SOFT 
MA_RAMP_LINEAR 
MA_RAMP_EXCLUSION 

Definition at line 271 of file DNA_material_types.h.

◆ anonymous enum

anonymous enum

MTex::texco

Enumerator
TEXCO_ORCO 
TEXCO_GLOB 
TEXCO_UV 
TEXCO_OBJECT 
TEXCO_WINDOW 
TEXCO_STRAND 

still stored in vertex->accum, 1 D.

TEXCO_PARTICLE 

strand is used for normal materials, particle for halo materials

Definition at line 294 of file DNA_material_types.h.

◆ anonymous enum

anonymous enum

MTex::mapto

Enumerator
MAP_COL 
MAP_ALPHA 

Definition at line 317 of file DNA_material_types.h.

◆ anonymous enum

anonymous enum

Material::pr_flag

Enumerator
MA_PREVIEW_WORLD 

Definition at line 339 of file DNA_material_types.h.

◆ anonymous enum

anonymous enum

Material::surface_render_method

Enumerator
MA_SURFACE_METHOD_DEFERRED 
MA_SURFACE_METHOD_FORWARD 

Definition at line 344 of file DNA_material_types.h.

◆ anonymous enum

anonymous enum

Material::volume_intersection_method

Enumerator
MA_VOLUME_ISECT_FAST 
MA_VOLUME_ISECT_ACCURATE 

Definition at line 350 of file DNA_material_types.h.

◆ anonymous enum

anonymous enum

Material::blend_method

Enumerator
MA_BM_SOLID 
MA_BM_CLIP 
MA_BM_HASHED 
MA_BM_BLEND 

Definition at line 356 of file DNA_material_types.h.

◆ anonymous enum

anonymous enum

Material::blend_flag

Enumerator
MA_BL_HIDE_BACKFACE 
MA_BL_SS_REFRACTION 
MA_BL_CULL_BACKFACE 
MA_BL_TRANSLUCENCY 
MA_BL_LIGHTPROBE_VOLUME_DOUBLE_SIDED 
MA_BL_CULL_BACKFACE_SHADOW 
MA_BL_TRANSPARENT_SHADOW 
MA_BL_THICKNESS_FROM_SHADOW 

Definition at line 366 of file DNA_material_types.h.

◆ anonymous enum

anonymous enum

Material::blend_shadow

Enumerator
MA_BS_NONE 
MA_BS_SOLID 
MA_BS_CLIP 
MA_BS_HASHED 

Definition at line 378 of file DNA_material_types.h.

◆ anonymous enum

anonymous enum

Material::displacement_method

Enumerator
MA_DISPLACEMENT_BUMP 
MA_DISPLACEMENT_DISPLACE 
MA_DISPLACEMENT_BOTH 

Definition at line 386 of file DNA_material_types.h.

◆ anonymous enum

anonymous enum

Material::thickness_mode

Enumerator
MA_THICKNESS_SPHERE 
MA_THICKNESS_SLAB 

Definition at line 393 of file DNA_material_types.h.

◆ anonymous enum

anonymous enum
Enumerator
GP_MATERIAL_STROKE_STYLE_SOLID 
GP_MATERIAL_STROKE_STYLE_TEXTURE 

Definition at line 399 of file DNA_material_types.h.

◆ anonymous enum

anonymous enum
Enumerator
GP_MATERIAL_FILL_STYLE_SOLID 
GP_MATERIAL_FILL_STYLE_GRADIENT 
GP_MATERIAL_FILL_STYLE_CHECKER 
GP_MATERIAL_FILL_STYLE_TEXTURE 

Definition at line 405 of file DNA_material_types.h.

◆ anonymous enum

anonymous enum
Enumerator
GP_MATERIAL_GRADIENT_LINEAR 
GP_MATERIAL_GRADIENT_RADIAL 

Definition at line 413 of file DNA_material_types.h.

◆ anonymous enum

anonymous enum
Enumerator
GP_MATERIAL_FOLLOW_PATH 
GP_MATERIAL_FOLLOW_OBJ 
GP_MATERIAL_FOLLOW_FIXED 

Definition at line 419 of file DNA_material_types.h.

◆ eMaterialGPencilStyle_Flag

Enumerator
GP_MATERIAL_FILL_PATTERN 
GP_MATERIAL_HIDE 
GP_MATERIAL_LOCKED 
GP_MATERIAL_HIDE_ONIONSKIN 
GP_MATERIAL_TEX_CLAMP 
GP_MATERIAL_FILL_TEX_MIX 
GP_MATERIAL_FLIP_FILL 
GP_MATERIAL_STROKE_PATTERN 
GP_MATERIAL_STROKE_SHOW 
GP_MATERIAL_FILL_SHOW 
GP_MATERIAL_STROKE_TEX_MIX 
GP_MATERIAL_DISABLE_STENCIL 
GP_MATERIAL_IS_STROKE_HOLDOUT 
GP_MATERIAL_IS_FILL_HOLDOUT 

Definition at line 106 of file DNA_material_types.h.

◆ eMaterialGPencilStyle_Mode

Enumerator
GP_MATERIAL_MODE_LINE 
GP_MATERIAL_MODE_DOT 
GP_MATERIAL_MODE_SQUARE 

Definition at line 137 of file DNA_material_types.h.

◆ eMaterialLineArtFlags

Enumerator
LRT_MATERIAL_MASK_ENABLED 
LRT_MATERIAL_CUSTOM_OCCLUSION_EFFECTIVENESS 
LRT_MATERIAL_CUSTOM_INTERSECTION_PRIORITY 

Definition at line 158 of file DNA_material_types.h.

◆ ePreviewType

Material::pr_type

Enumerator
MA_FLAT 
MA_SPHERE 
MA_CUBE 
MA_SHADERBALL 
MA_SPHERE_A 
MA_TEXTURE 
MA_LAMP 
MA_SKY 
MA_HAIR 
MA_ATMOS 
MA_CLOTH 
MA_FLUID 

Definition at line 323 of file DNA_material_types.h.