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:
authorNick Samarin <nicks1987@bigmir.net>2011-05-17 00:30:59 +0400
committerNick Samarin <nicks1987@bigmir.net>2011-05-17 00:30:59 +0400
commita918040902bdeb7c9793168710871e4a3b7777a3 (patch)
tree7380f00bce5448d777d09f4be4d7127e8eecec49 /source/blender/makesdna/DNA_modifier_types.h
parentdaeca2f8262884c436c5678225704b594ce5347b (diff)
parent99ee18c684da65ba774175c0b57a086e8222464a (diff)
synched with trunk at revision 36569
Diffstat (limited to 'source/blender/makesdna/DNA_modifier_types.h')
-rw-r--r--source/blender/makesdna/DNA_modifier_types.h85
1 files changed, 72 insertions, 13 deletions
diff --git a/source/blender/makesdna/DNA_modifier_types.h b/source/blender/makesdna/DNA_modifier_types.h
index 6e8367385ed..ac5e411e18b 100644
--- a/source/blender/makesdna/DNA_modifier_types.h
+++ b/source/blender/makesdna/DNA_modifier_types.h
@@ -1,5 +1,4 @@
-/**
- *
+/*
* $Id$
*
* ***** BEGIN GPL LICENSE BLOCK *****
@@ -21,11 +20,16 @@
* ***** END GPL LICENSE BLOCK *****
*/
-#include "DNA_listBase.h"
-
#ifndef DNA_MODIFIER_TYPES_H
#define DNA_MODIFIER_TYPES_H
+/** \file DNA_modifier_types.h
+ * \ingroup DNA
+ */
+
+#include "DNA_listBase.h"
+
+
#define MODSTACK_DEBUG 1
/* WARNING ALERT! TYPEDEF VALUES ARE WRITTEN IN FILES! SO DO NOT CHANGE! */
@@ -66,8 +70,6 @@ typedef enum ModifierType {
eModifierType_ShapeKey,
eModifierType_Solidify,
eModifierType_Screw,
- /* placeholder, keep this so durian files load in
- * trunk with the correct modifier once its merged */
eModifierType_Warp,
eModifierType_NavMesh,
NUM_MODIFIER_TYPES
@@ -104,6 +106,17 @@ typedef enum {
eSubsurfModifierFlag_SubsurfUv = (1<<3)
} SubsurfModifierFlag;
+/* not a real modifier */
+typedef struct MappingInfoModifierData {
+ ModifierData modifier;
+
+ struct Tex *texture;
+ struct Object *map_object;
+ char uvlayer_name[32];
+ int uvlayer_tmp;
+ int texmapping;
+} MappingInfoModifierData;
+
typedef struct SubsurfModifierData {
ModifierData modifier;
@@ -289,15 +302,19 @@ typedef struct SmokeModifierData {
typedef struct DisplaceModifierData {
ModifierData modifier;
+ /* keep in sync with MappingInfoModifierData */
struct Tex *texture;
+ struct Object *map_object;
+ char uvlayer_name[32];
+ int uvlayer_tmp;
+ int texmapping;
+ int pad10;
+ /* end MappingInfoModifierData */
+
float strength;
int direction;
char defgrp_name[32];
float midlevel;
- int texmapping;
- struct Object *map_object;
- char uvlayer_name[32];
- int uvlayer_tmp, pad;
} DisplaceModifierData;
/* DisplaceModifierData->direction */
@@ -471,7 +488,7 @@ typedef struct CollisionModifierData {
unsigned int numverts;
unsigned int numfaces;
- float time, pad; /* cfra time of modifier */
+ float time_x, time_xnew; /* cfra time of modifier */
struct BVHTree *bvhtree; /* bounding volume hierarchy for this cloth object */
} CollisionModifierData;
@@ -585,7 +602,7 @@ typedef struct ParticleInstanceModifierData {
typedef enum {
eExplodeFlag_CalcFaces = (1<<0),
eExplodeFlag_PaSize = (1<<1),
- eExplodeFlag_EdgeSplit = (1<<2),
+ eExplodeFlag_EdgeCut = (1<<2),
eExplodeFlag_Unborn = (1<<3),
eExplodeFlag_Alive = (1<<4),
eExplodeFlag_Dead = (1<<5),
@@ -596,6 +613,7 @@ typedef struct ExplodeModifierData {
int *facepa;
short flag, vgroup;
float protect;
+ char uvname[32];
} ExplodeModifierData;
typedef struct MultiresModifierData {
@@ -701,13 +719,16 @@ typedef struct SolidifyModifierData {
float crease_outer;
float crease_rim;
int flag;
+ short mat_ofs;
+ short mat_ofs_rim;
+ int pad;
} SolidifyModifierData;
#define MOD_SOLIDIFY_RIM (1<<0)
#define MOD_SOLIDIFY_EVEN (1<<1)
#define MOD_SOLIDIFY_NORMAL_CALC (1<<2)
#define MOD_SOLIDIFY_VGROUP_INV (1<<3)
-#define MOD_SOLIDIFY_RIM_MATERIAL (1<<4)
+#define MOD_SOLIDIFY_RIM_MATERIAL (1<<4) /* deprecated, used in do_versions */
typedef struct ScrewModifierData {
ModifierData modifier;
@@ -730,4 +751,42 @@ typedef struct NavMeshModifierData {
ModifierData modifier;
} NavMeshModifierData;
+typedef struct WarpModifierData {
+ ModifierData modifier;
+
+ /* keep in sync with MappingInfoModifierData */
+ struct Tex *texture;
+ struct Object *map_object;
+ char uvlayer_name[32];
+ int uvlayer_tmp;
+ int texmapping;
+ int pad10;
+ /* end MappingInfoModifierData */
+
+ float strength;
+
+ struct Object *object_from;
+ struct Object *object_to;
+ struct CurveMapping *curfalloff;
+ char defgrp_name[32]; /* optional vertexgroup name */
+ float falloff_radius;
+ char flag; /* not used yet */
+ char falloff_type;
+ char pad[2];
+} WarpModifierData;
+
+#define MOD_WARP_VOLUME_PRESERVE 1
+
+typedef enum {
+ eWarp_Falloff_None = 0,
+ eWarp_Falloff_Curve = 1,
+ eWarp_Falloff_Sharp = 2, /* PROP_SHARP */
+ eWarp_Falloff_Smooth = 3, /* PROP_SMOOTH */
+ eWarp_Falloff_Root = 4, /* PROP_ROOT */
+ eWarp_Falloff_Linear = 5, /* PROP_LIN */
+ eWarp_Falloff_Const = 6, /* PROP_CONST */
+ eWarp_Falloff_Sphere = 7, /* PROP_SPHERE */
+ /* PROP_RANDOM not used */
+} WarpModifierFalloff;
+
#endif