diff options
author | Tamito Kajiyama <rd6t-kjym@asahi-net.or.jp> | 2012-08-29 04:53:29 +0400 |
---|---|---|
committer | Tamito Kajiyama <rd6t-kjym@asahi-net.or.jp> | 2012-08-29 04:53:29 +0400 |
commit | 141dd5233ede83a6d3882713c95bba47cee90a68 (patch) | |
tree | 23cdf3e596bba784d101f9e32f234b399ffba4b1 /source/blender/makesdna | |
parent | 22b30da565de53a0a1d34079d72b08fdb54ec8e3 (diff) | |
parent | 8321acaf439b33cca0b054565be176047d289134 (diff) |
Merged changes in the trunk up to revision 50257.
Conflicts resolved:
source/blender/blenkernel/CMakeLists.txt
Diffstat (limited to 'source/blender/makesdna')
-rw-r--r-- | source/blender/makesdna/DNA_color_types.h | 6 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_curve_types.h | 32 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_mask_types.h | 37 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_particle_types.h | 4 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_sequence_types.h | 83 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_userdef_types.h | 3 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_vfont_types.h | 4 |
7 files changed, 134 insertions, 35 deletions
diff --git a/source/blender/makesdna/DNA_color_types.h b/source/blender/makesdna/DNA_color_types.h index 1f8fdd20dda..4ead26c04f3 100644 --- a/source/blender/makesdna/DNA_color_types.h +++ b/source/blender/makesdna/DNA_color_types.h @@ -47,8 +47,10 @@ typedef struct CurveMapPoint { } CurveMapPoint; /* curvepoint->flag */ -#define CUMA_SELECT 1 -#define CUMA_VECTOR 2 +enum { + CUMA_SELECT = 1, + CUMA_VECTOR = 2 +}; typedef struct CurveMap { short totpoint, flag; diff --git a/source/blender/makesdna/DNA_curve_types.h b/source/blender/makesdna/DNA_curve_types.h index 56cf90d3d9d..284694f2b48 100644 --- a/source/blender/makesdna/DNA_curve_types.h +++ b/source/blender/makesdna/DNA_curve_types.h @@ -87,20 +87,22 @@ typedef struct BevPoint { short split_tag, dupe_tag; } BevPoint; -/* Keyframes on F-Curves (allows code reuse of Bezier eval code) and +/** + * Keyframes on F-Curves (allows code reuse of Bezier eval code) and * Points on Bezier Curves/Paths are generally BezTriples - */ -/* note: alfa location in struct is abused by Key system */ -/* vec in BezTriple looks like this: - * - vec[0][0]=x location of handle 1 - * - vec[0][1]=y location of handle 1 - * - vec[0][2]=z location of handle 1 (not used for FCurve Points(2d)) - * - vec[1][0]=x location of control point - * - vec[1][1]=y location of control point - * - vec[1][2]=z location of control point - * - vec[2][0]=x location of handle 2 - * - vec[2][1]=y location of handle 2 - * - vec[2][2]=z location of handle 2 (not used for FCurve Points(2d)) + * + * \note alfa location in struct is abused by Key system + * + * \note vec in BezTriple looks like this: + * - vec[0][0] = x location of handle 1 + * - vec[0][1] = y location of handle 1 + * - vec[0][2] = z location of handle 1 (not used for FCurve Points(2d)) + * - vec[1][0] = x location of control point + * - vec[1][1] = y location of control point + * - vec[1][2] = z location of control point + * - vec[2][0] = x location of handle 2 + * - vec[2][1] = y location of handle 2 + * - vec[2][2] = z location of handle 2 (not used for FCurve Points(2d)) */ typedef struct BezTriple { float vec[3][3]; @@ -119,6 +121,10 @@ typedef struct BPoint { float radius, pad; /* user-set radius per point for beveling etc */ } BPoint; +/** + * \note Nurb name is misleading, since it can be used for polygons too, + * also, it should be NURBS (Nurb isn't the singular of Nurbs). + */ typedef struct Nurb { struct Nurb *next, *prev; /* multiple nurbs per curve object are allowed */ short type; diff --git a/source/blender/makesdna/DNA_mask_types.h b/source/blender/makesdna/DNA_mask_types.h index b34a6c9b12f..bf388d8c018 100644 --- a/source/blender/makesdna/DNA_mask_types.h +++ b/source/blender/makesdna/DNA_mask_types.h @@ -82,13 +82,14 @@ typedef struct MaskSplinePoint { typedef struct MaskSpline { struct MaskSpline *next, *prev; - int flag; /* defferent spline flag (closed, ...) */ + short flag; /* defferent spline flag (closed, ...) */ + char offset_mode; /* feather offset method */ + char weight_interp; /* weight interpolation */ + int tot_point; /* total number of points */ MaskSplinePoint *points; /* points which defines spline itself */ MaskParent parent; /* parenting information of the whole spline */ - int weight_interp, pad; /* weight interpolation */ - MaskSplinePoint *points_deform; /* deformed copy of 'points' BezTriple data - not saved */ } MaskSpline; @@ -146,8 +147,17 @@ enum { }; /* MaskSpline->weight_interp */ -#define MASK_SPLINE_INTERP_LINEAR 1 -#define MASK_SPLINE_INTERP_EASE 2 +enum { + MASK_SPLINE_INTERP_LINEAR = 1, + MASK_SPLINE_INTERP_EASE = 2 +}; + +/* MaskSpline->offset_mode */ +enum { + MASK_SPLINE_OFFSET_EVEN = 0, + MASK_SPLINE_OFFSET_SMOOTH = 1 +}; + /* ob->restrictflag */ #define MASK_RESTRICT_VIEW 1 @@ -168,14 +178,15 @@ enum { /* masklay->blend */ enum { - MASK_BLEND_ADD = 0, - MASK_BLEND_SUBTRACT = 1, - MASK_BLEND_LIGHTEN = 2, - MASK_BLEND_DARKEN = 3, - MASK_BLEND_MUL = 4, - MASK_BLEND_REPLACE = 5, - MASK_BLEND_DIFFERENCE = 6, - MASK_BLEND_MERGE = 7 + MASK_BLEND_ADD = 0, + MASK_BLEND_SUBTRACT = 1, + MASK_BLEND_LIGHTEN = 2, + MASK_BLEND_DARKEN = 3, + MASK_BLEND_MUL = 4, + MASK_BLEND_REPLACE = 5, + MASK_BLEND_DIFFERENCE = 6, + MASK_BLEND_MERGE_ADD = 7, + MASK_BLEND_MERGE_SUBTRACT = 8 }; /* masklay->blend_flag */ diff --git a/source/blender/makesdna/DNA_particle_types.h b/source/blender/makesdna/DNA_particle_types.h index 0853df87a35..5952aa8afb0 100644 --- a/source/blender/makesdna/DNA_particle_types.h +++ b/source/blender/makesdna/DNA_particle_types.h @@ -154,7 +154,8 @@ typedef struct ParticleSettings { short type, from, distr, texact; /* physics modes */ short phystype, rotmode, avemode, reactevent; - short draw, draw_as, draw_size, childtype; + int draw, pad1; + short draw_as, draw_size, childtype, pad2; short ren_as, subframes, draw_col; /* number of path segments, power of 2 except */ short draw_step, ren_step; @@ -398,6 +399,7 @@ typedef struct ParticleSystem { #define PART_DRAW_MAT_COL (1<<13) /* deprecated, but used in do_versions */ #define PART_DRAW_WHOLE_GR (1<<14) #define PART_DRAW_REN_STRAND (1<<15) +#define PART_DRAW_NO_SCALE_OB (1<<16) /* used with dupliobjects/groups */ /* part->draw_col */ #define PART_DRAW_COL_NONE 0 diff --git a/source/blender/makesdna/DNA_sequence_types.h b/source/blender/makesdna/DNA_sequence_types.h index 16e8b8904fa..c83bddbfc64 100644 --- a/source/blender/makesdna/DNA_sequence_types.h +++ b/source/blender/makesdna/DNA_sequence_types.h @@ -34,6 +34,7 @@ #define __DNA_SEQUENCE_TYPES_H__ #include "DNA_defs.h" +#include "DNA_color_types.h" #include "DNA_listBase.h" #include "DNA_vec_types.h" @@ -101,11 +102,16 @@ typedef struct Strip { StripColorBalance *color_balance; } Strip; -/* The sequence structure is the basic struct used by any strip. each of the strips uses a different sequence structure.*/ -/* WATCH IT: first part identical to ID (for use in ipo's) - * the commend above is historic, probably we can drop the ID compatibility, but take care making this change */ - -/* WATCH ITv2, this is really a 'Strip' in the UI!, name is highly confusing */ +/** + * The sequence structure is the basic struct used by any strip. + * each of the strips uses a different sequence structure. + * + * \warning The first part identical to ID (for use in ipo's) + * the commend above is historic, probably we can drop the ID compatibility, + * but take care making this change. + * + * \warning This is really a 'Strip' in the UI!, name is highly confusing. + */ typedef struct Sequence { struct Sequence *next, *prev; void *tmp; /* tmp var for copying, and tagging for linked selection */ @@ -167,6 +173,9 @@ typedef struct Sequence { /* is sfra needed anymore? - it looks like its only used in one place */ int sfra, pad; /* starting frame according to the timeline of the scene. */ + + /* modifiers */ + ListBase modifiers; } Sequence; typedef struct MetaStack { @@ -229,6 +238,46 @@ typedef struct SpeedControlVars { int lastValidFrame; } SpeedControlVars; +/* ***************** Sequence modifiers ****************** */ + +typedef struct SequenceModifierData { + struct SequenceModifierData *next, *prev; + int type, flag; + char name[64]; /* MAX_NAME */ + + /* mask input, either sequence or maks ID */ + int mask_input_type, pad; + + struct Sequence *mask_sequence; + struct Mask *mask_id; +} SequenceModifierData; + +typedef struct ColorBalanceModifierData { + SequenceModifierData modifier; + + StripColorBalance color_balance; + float color_multiply; +} ColorBalanceModifierData; + +typedef struct CurvesModifierData { + SequenceModifierData modifier; + + struct CurveMapping curve_mapping; +} CurvesModifierData; + +typedef struct HueCorrectModifierData { + SequenceModifierData modifier; + + struct CurveMapping curve_mapping; +} HueCorrectModifierData; + +typedef struct BrightContrastModifierData { + SequenceModifierData modifier; + + float bright; + float contrast; +} BrightContrastModifierData; + #define MAXSEQ 32 #define SELECT 1 @@ -352,5 +401,27 @@ enum { #define SEQ_HAS_PATH(_seq) (ELEM4((_seq)->type, SEQ_TYPE_MOVIE, SEQ_TYPE_IMAGE, SEQ_TYPE_SOUND_RAM, SEQ_TYPE_SOUND_HD)) -#endif +/* modifiers */ + +/* SequenceModifierData->type */ +enum { + seqModifierType_ColorBalance = 1, + seqModifierType_Curves = 2, + seqModifierType_HueCorrect = 3, + seqModifierType_BrightContrast = 4, + + NUM_SEQUENCE_MODIFIER_TYPES +}; +/* SequenceModifierData->flag */ +enum { + SEQUENCE_MODIFIER_MUTE = (1 << 0), + SEQUENCE_MODIFIER_EXPANDED = (1 << 1), +}; + +enum { + SEQUENCE_MASK_INPUT_STRIP = 0, + SEQUENCE_MASK_INPUT_ID = 1 +}; + +#endif diff --git a/source/blender/makesdna/DNA_userdef_types.h b/source/blender/makesdna/DNA_userdef_types.h index cbfc1134679..833cb267185 100644 --- a/source/blender/makesdna/DNA_userdef_types.h +++ b/source/blender/makesdna/DNA_userdef_types.h @@ -415,6 +415,8 @@ typedef struct UserDef { short use_16bit_textures, use_gpu_mipmap; float ndof_sensitivity; /* overall sensitivity of 3D mouse */ + float ndof_orbit_sensitivity; + float pad4; int ndof_flag; /* flags for 3D mouse */ float glalphaclip; @@ -650,6 +652,7 @@ extern UserDef U; /* from blenkernel blender.c */ #define NDOF_PANX_INVERT_AXIS (1 << 12) #define NDOF_PANY_INVERT_AXIS (1 << 13) #define NDOF_PANZ_INVERT_AXIS (1 << 14) +#define NDOF_TURNTABLE (1 << 15) /* compute_device_type */ #define USER_COMPUTE_DEVICE_NONE 0 diff --git a/source/blender/makesdna/DNA_vfont_types.h b/source/blender/makesdna/DNA_vfont_types.h index 3cccfe6a19f..7aaeaf23db2 100644 --- a/source/blender/makesdna/DNA_vfont_types.h +++ b/source/blender/makesdna/DNA_vfont_types.h @@ -46,6 +46,10 @@ typedef struct VFont { struct VFontData *data; struct PackedFile *packedfile; + + /* runtime only, holds memory for freetype to read from + * TODO, replace this with blf_font_new() style loading */ + struct PackedFile *temp_pf; } VFont; /* *************** FONT ****************** */ |