Extracts nlasnapshot_blend_get_inverted_upper_snapshot() from BKE_animsys_nla_remap_keyframe_values()
- This introduces a new struct member: NlaEvalChannelSnapshot->remap_domain and marks which values of blended_snapshot are processed for remapping/used-for-inverting. Effectively, it marks which values have successfully been reampped and can be further used for remapping.
- nlasnapshot_blend_get_inverted_upper_snapshot(): the output snapshot r_upper_snapshot has each channel's remap_domain written to which effectively marks the successfully remapped values. The only reason a value is not in the remap domain is if inversion failed or it wasn't marked to be remapped.
- nlasnapshot_enable_all_remap_domain() is unused in this patch but seemed generally useful when using snapshots for remapping. D8867: Feature: NLA Merge Strips would be able to make use of it. Though I suppose that means that D8867 should also introduce it?
- nlasnapshot_blend_get_inverted_upper_snapshot() has a variant nlasnapshot_blend() from D10220: NLA: Extract nlasnapshot_blend(), but this patch doesn't depend on it at all. A third variant will later be added nlasnapshot_blend_get_inverted_lower_snapshot(). Altogether, these three functions allow solving for any of (lower_snapshot, upper_snapshot, blended_snapshot) given the other two. The function ...lower_snapshot() will also similarly process the remap domain of the blended and lower snapshot.
- added assertions within nlasnapshot_blend() and nlasnapshot_blend_get_inverted_upper_snapshot() to future proof branches dealing with blendmode and mixmodes. (suggested by sybren)
No user functional changes