Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/makesdna/DNA_material_types.h')
-rw-r--r--source/blender/makesdna/DNA_material_types.h26
1 files changed, 15 insertions, 11 deletions
diff --git a/source/blender/makesdna/DNA_material_types.h b/source/blender/makesdna/DNA_material_types.h
index aa847050581..cd0b73c8f70 100644
--- a/source/blender/makesdna/DNA_material_types.h
+++ b/source/blender/makesdna/DNA_material_types.h
@@ -40,18 +40,19 @@
#endif
struct MTex;
-struct Ipo;
-struct Material;
struct ColorBand;
struct Group;
struct bNodeTree;
+struct AnimData;
+struct Ipo;
/* WATCH IT: change type? also make changes in ipo.h */
typedef struct Material {
ID id;
+ struct AnimData *adt; /* animation data (must be immediately after id for utilities to use it) */
- short colormodel, flag;
+ short material_type, flag;
/* note, keep this below synced with render_types.h */
float r, g, b;
float specr, specg, specb;
@@ -97,7 +98,9 @@ typedef struct Material {
/* shaders */
short diff_shader, spec_shader;
float roughness, refrac;
- float param[4]; /* size, smooth, size, smooth, for toonshader */
+ /* XXX param[4] needs review and improvement (shader system as whole anyway)
+ This is nasty reused variable for different goals and not easy to RNAify nicely. -jesterKing */
+ float param[4]; /* size, smooth, size, smooth, for toonshader, 0 (fac) and 1 (fresnel) also for fresnel shader */
float rms;
float darkness;
short texco, mapto;
@@ -112,7 +115,7 @@ typedef struct Material {
struct MTex *mtex[18]; /* MAX_MTEX */
struct bNodeTree *nodetree;
- struct Ipo *ipo;
+ struct Ipo *ipo; // XXX depreceated... old animation system
struct Group *group; /* light group */
struct PreviewImage * preview;
@@ -144,15 +147,16 @@ typedef struct Material {
*/
#define MAXMAT 16
-/* colormodel */
-#define MA_RGB 0
-#define MA_CMYK 1
-#define MA_YUV 2
-#define MA_HSV 3
+/* material_type */
+#define MA_TYPE_SURFACE 0
+#define MA_TYPE_HALO 1
+#define MA_TYPE_VOLUME 2
/* flag */
/* for render */
#define MA_IS_USED 1
+ /* for dopesheet */
+#define MA_DS_EXPAND 2
/* mode (is int) */
#define MA_TRACEBLE 1
@@ -161,7 +165,7 @@ typedef struct Material {
#define MA_WIRE 8
#define MA_VERTEXCOL 16
#define MA_HALO_SOFT 16
-#define MA_HALO 32
+#define MA_HALO 32 /* deprecated */
#define MA_ZTRA 64
#define MA_VERTEXCOLP 128
#define MA_ZINV 256