Beispiel #1
0
        /**
         * Set the translation and Scale3D components of this transform to a linearly interpolated combination of two other transforms
         *
         * Translation = FMath::Lerp(SourceAtom1.Translation, SourceAtom2.Translation, Alpha)
         * Scale3D = FMath::Lerp(SourceAtom1.Scale3D, SourceAtom2.Scale3D, Alpha)
         *
         * @param SourceAtom1 The starting point source atom (used 100% if Alpha is 0)
         * @param SourceAtom2 The ending point source atom (used 100% if Alpha is 1)
         * @param Alpha The blending weight between SourceAtom1 and SourceAtom2
         */
        public void LerpTranslationScale3D(FTransform SourceAtom1, FTransform SourceAtom2, float Alpha)
        {
            Translation = FMath.Lerp(SourceAtom1.Translation, SourceAtom2.Translation, Alpha);
            Scale3D     = FMath.Lerp(SourceAtom1.Scale3D, SourceAtom2.Scale3D, Alpha);

            DiagnosticCheckNaN_Translate();
            DiagnosticCheckNaN_Scale3D();
        }