Complete disaster-recovery snapshot: engine/game source, game data assets, VC6 toolchain + DX SDKs, build outputs, deployed game, and _UNUSED archive. Large binaries in Git LFS; text preserved byte-for-byte (core.autocrlf=false, no eol attributes). See RECOVERY.md for the one-clone rebuild procedure.
104 lines
2.3 KiB
C++
104 lines
2.3 KiB
C++
//===========================================================================//
|
|
// File: SimpleChannelAnimator.cpp
|
|
// Project: MechWarrior 4
|
|
// Contents:
|
|
//
|
|
//---------------------------------------------------------------------------//
|
|
// Date Who Modification //
|
|
// -------- --- ---------------------------------------------------------- //
|
|
// 12/17/99 JSE Initial coding,
|
|
//---------------------------------------------------------------------------//
|
|
// Copyright (C) 1998, Fasa Interactive, Inc.
|
|
// All Rights reserved worldwide
|
|
// This unpublished sourcecode is PROPRIETARY and CONFIDENTIAL
|
|
//===========================================================================//
|
|
|
|
#include "MW4Headers.hpp"
|
|
#include "SimpleChannelAnimator.hpp"
|
|
|
|
|
|
void
|
|
SimpleChannelAnimatorOf<Scalar>::UpdatePosition(void)
|
|
{
|
|
Scalar lerp;
|
|
|
|
dirtyFlag = false;
|
|
if (currentTime >= totalTime)
|
|
{
|
|
currentPosition = endPosition;
|
|
return;
|
|
}
|
|
|
|
lerp = currentTime/totalTime;
|
|
|
|
currentPosition = Lerp(startPosition, endPosition, lerp);
|
|
|
|
}
|
|
|
|
void
|
|
SimpleChannelAnimatorOf<Point3D>::UpdatePosition(void)
|
|
{
|
|
Scalar lerp;
|
|
|
|
dirtyFlag = false;
|
|
if (currentTime >= totalTime)
|
|
{
|
|
currentPosition = endPosition;
|
|
return;
|
|
}
|
|
|
|
lerp = currentTime/totalTime;
|
|
|
|
currentPosition.Lerp(startPosition, endPosition, lerp);
|
|
}
|
|
|
|
void
|
|
SimpleChannelAnimatorOf<Vector3D>::UpdatePosition(void)
|
|
{
|
|
Scalar lerp;
|
|
|
|
dirtyFlag = false;
|
|
if (currentTime >= totalTime)
|
|
{
|
|
currentPosition = endPosition;
|
|
return;
|
|
}
|
|
|
|
lerp = currentTime/totalTime;
|
|
|
|
currentPosition.Lerp(startPosition, endPosition, lerp);
|
|
}
|
|
|
|
void
|
|
SimpleChannelAnimatorOf<UnitQuaternion>::UpdatePosition(void)
|
|
{
|
|
Scalar lerp;
|
|
|
|
dirtyFlag = false;
|
|
if (currentTime >= totalTime)
|
|
{
|
|
currentPosition = endPosition;
|
|
return;
|
|
}
|
|
|
|
lerp = currentTime/totalTime;
|
|
|
|
currentPosition.Lerp(startPosition, endPosition, lerp);
|
|
}
|
|
|
|
void
|
|
SimpleChannelAnimatorOf<YawPitchRoll>::UpdatePosition(void)
|
|
{
|
|
Scalar lerp;
|
|
|
|
dirtyFlag = false;
|
|
if (currentTime >= totalTime)
|
|
{
|
|
currentPosition = endPosition;
|
|
return;
|
|
}
|
|
|
|
lerp = currentTime/totalTime;
|
|
|
|
currentPosition.Lerp(startPosition, endPosition, lerp);
|
|
} |