public void CalculateCombinedTransforms() { //UpdateCachedValues(); AnimationTransform.Decompose(out FScale, out FRotation, out FTranslation); if (Parent != null) { FCombinedTransform = AnimationTransform * BaseTransform * Parent.CombinedTransform; } else { FCombinedTransform = AnimationTransform * BaseTransform; } }
private void UpdateCachedValues() { if (IsDirty()) { AnimationTransform.Decompose(out FCachedScale, out FCachedRotation, out FCachedTranslation); if (Parent != null) { FCachedCombinedTransform = AnimationTransform * BaseTransform * Parent.CombinedTransform; } else { FCachedCombinedTransform = AnimationTransform * BaseTransform; } FDirty = false; } }