diff options
author | Roel Spruit <roel@spruitje.nl> | 2004-06-19 02:53:06 +0400 |
---|---|---|
committer | Roel Spruit <roel@spruitje.nl> | 2004-06-19 02:53:06 +0400 |
commit | a31dec3712d0b03168fc29987bf088935fedb367 (patch) | |
tree | 459601dd421129186ca0389b596b3e7cd9c64056 /source/blender/include/BSE_sequence.h | |
parent | 35382146beb64ec67d0e54fe133dab79efe8a039 (diff) |
added a new Sequence Effect: Sweep.
this consists of 22 different ways to sweep from 1 strip to another. For you windows lovers: it's like "Blinds" in Powerpoint :)
- in the NKEY menu you can choose which type you want perform, vertical, horizontal, in/out etc. it's too much to decribe.
Credits for this go to Kent 'Sirdude" Mein who coded the sequence plugin I stole the code from.
To allow certain sequence effects to have settings, I also added a "varstr" void pointer to the Sequence DNA, that can point to a special struct for each effect. This is similar to how plugins are handles.
more neat effects to come....
Diffstat (limited to 'source/blender/include/BSE_sequence.h')
-rw-r--r-- | source/blender/include/BSE_sequence.h | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/source/blender/include/BSE_sequence.h b/source/blender/include/BSE_sequence.h index 43a8a627824..dcef4b8f4f3 100644 --- a/source/blender/include/BSE_sequence.h +++ b/source/blender/include/BSE_sequence.h @@ -28,7 +28,7 @@ * Contributor(s): none yet. * * ***** END GPL/BL DUAL LICENSE BLOCK ***** - * + * */ #ifndef BSE_SEQUENCE_H @@ -95,6 +95,18 @@ void do_mul_effect(float facf0, float facf1, int x, int y, unsigned int *rect1, unsigned int *rect2, unsigned int *out); +/* Sweep effect */ +enum {DO_LEFT_RIGHT, DO_RIGHT_LEFT, DO_DOWN_UP, DO_UP_DOWN, + DO_LOWER_LEFT_UPPER_RIGHT, DO_UPPER_RIGHT_LOWER_LEFT, + DO_UPPER_LEFT_LOWER_RIGHT, DO_LOWER_RIGHT_UPPER_LEFT, + DO_HORZ_OUT, DO_HORZ_IN, DO_VERT_OUT, DO_VERT_IN, + DO_HORZ_VERT_OUT, DO_HORZ_VERT_IN, DO_LEFT_DOWN_RIGHT_UP_OUT, + DO_LEFT_DOWN_RIGHT_UP_IN, DO_LEFT_UP_RIGHT_DOWN_OUT, + DO_LEFT_UP_RIGHT_DOWN_IN, DO_DIAG_OUT, DO_DIAG_IN, DO_DIAG_OUT_2, + DO_DIAG_IN_2}; +int check_zone(int x, int y, int xo, int yo, struct Sequence *seq, float facf0); +void do_sweep_effect(struct Sequence *seq, float facf0, float facf1, int x, int y, unsigned int *rect1, unsigned int *rect2, unsigned int *out); + void make_black_ibuf(struct ImBuf *ibuf); void multibuf(struct ImBuf *ibuf, float fmul); void do_effect(int cfra, struct Sequence *seq, struct StripElem *se); |