Fix #100718: NLA Hold Forward Inconsistency #107281
|
@ -3259,16 +3259,12 @@ static void animsys_create_action_track_strip(const AnimData *adt,
|
|||
r_action_strip->extendmode = adt->act_extendmode;
|
||||
r_action_strip->influence = adt->act_influence;
|
||||
|
||||
/* NOTE: must set this, or else the default setting overrides,
|
||||
* and this setting doesn't work. */
|
||||
r_action_strip->flag |= NLASTRIP_FLAG_USR_INFLUENCE;
|
||||
|
||||
/* Unless extendmode is Nothing (might be useful for flattening NLA evaluation), disable range.
|
||||
* Extendmode Nothing and Hold will behave as normal. Hold Forward will behave just like Hold.
|
||||
*/
|
||||
if (r_action_strip->extendmode != NLASTRIP_EXTEND_NOTHING) {
|
||||
r_action_strip->flag |= NLASTRIP_FLAG_NO_TIME_MAP;
|
||||
}
|
||||
/* Must set NLASTRIP_FLAG_USR_INFLUENCE, or else the default setting overrides, and influence
|
||||
* doesn't work.
|
||||
*
|
||||
* Must set NLASTRIP_FLAG_NO_TIME_MAP, so Action Track fcurve evaluation extends beyond its
|
||||
* keyframe bounds. */
|
||||
r_action_strip->flag |= NLASTRIP_FLAG_USR_INFLUENCE | NLASTRIP_FLAG_NO_TIME_MAP;
|
||||
|
||||
const bool tweaking = (adt->flag & ADT_NLA_EDIT_ON) != 0;
|
||||
const bool soloing = (adt->flag & ADT_NLA_SOLO_TRACK) != 0;
|
||||
|
|
Loading…
Reference in New Issue