示例#1
0
        public Transforms.SparseWeight8 GetMorphWeights(int trackLogicalIndex, float time)
        {
            if (trackLogicalIndex < 0)
            {
                return(_Morphing.Value);
            }

            return(_Morphing.GetValueAt(trackLogicalIndex, time));
        }
示例#2
0
        public Transforms.AffineTransform GetLocalTransform(int trackLogicalIndex, float time)
        {
            if (!_UseAnimatedTransforms || trackLogicalIndex < 0)
            {
                return(_LocalTransform);
            }

            var s = _Scale?.GetValueAt(trackLogicalIndex, time);
            var r = _Rotation?.GetValueAt(trackLogicalIndex, time);
            var t = _Translation?.GetValueAt(trackLogicalIndex, time);

            return(new Transforms.AffineTransform(s, r, t));
        }
示例#3
0
        public Transforms.AffineTransform GetLocalTransform(int trackLogicalIndex, float time)
        {
            if (_UsePrecomputed || trackLogicalIndex < 0)
            {
                return(_LocalTransform);
            }

            var s = _Scale?.GetValueAt(trackLogicalIndex, time);
            var r = _Rotation?.GetValueAt(trackLogicalIndex, time);
            var t = _Translation?.GetValueAt(trackLogicalIndex, time);

            return(Transforms.AffineTransform.Create(s, r, t));
        }