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:
authorJoshua Leung <aligorith@gmail.com>2011-06-04 10:22:01 +0400
committerJoshua Leung <aligorith@gmail.com>2011-06-04 10:22:01 +0400
commit185663b52b618a5fc20878db269ac056ede7591e (patch)
tree2e1cf411283a48b790a24a64384577eee956dcfb /source/blender/makesdna/DNA_anim_types.h
parente27fe1c0493fcc06a835cb4d29628d6565d1c31b (diff)
FModifier Influence/BlendIn-Out
Following on from my commit to introduce frame ranges for FModifiers, those frame ranges can now have blend in/out values. By setting a blendin or blendout value, you're specifying the number of frames for the modifier's "full influence" to take effect or fade out relative to the start/end frames. The "full influence" above needs a little clarification. When the "use influence" setting is enabled, "full influence" is taken from the "influence" slider (a new setting). Otherwise, it uses 1.0 (i.e. unmodified influence, same as old behaviour before the introduction of influence controls). The influence slider basically says how much the modifier's effects are allowed to contribute to the final result. --- Notes: - This opt-in "Use Influence" approach is really forced upon us because there are heaps of old files for which we cannot easily version patch without spending some effort going through all the data in the file, hunting out the F-Modifiers. - interpf() seems to use a backwards order compared to everything else
Diffstat (limited to 'source/blender/makesdna/DNA_anim_types.h')
-rw-r--r--source/blender/makesdna/DNA_anim_types.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/source/blender/makesdna/DNA_anim_types.h b/source/blender/makesdna/DNA_anim_types.h
index 88a3fe81825..c650d15722d 100644
--- a/source/blender/makesdna/DNA_anim_types.h
+++ b/source/blender/makesdna/DNA_anim_types.h
@@ -65,6 +65,8 @@ typedef struct FModifier {
float sfra; /* start frame of restricted frame-range */
float efra; /* end frame of restricted frame-range */
+ float blendin; /* number of frames from sfra before modifier takes full influence */
+ float blendout; /* number of frames from efra before modifier fades out */
} FModifier;
/* Types of F-Curve modifier
@@ -97,7 +99,9 @@ typedef enum eFModifier_Flags {
/* user wants modifier to be skipped */
FMODIFIER_FLAG_MUTED = (1<<3),
/* restrict range that F-Modifier can be considered over */
- FMODIFIER_FLAG_RANGERESTRICT = (1<<4)
+ FMODIFIER_FLAG_RANGERESTRICT = (1<<4),
+ /* use influence control */
+ FMODIFIER_FLAG_USEINFLUENCE = (1<<5)
} eFModifier_Flags;
/* --- */