32 lines
627 B
C#
32 lines
627 B
C#
using SlimDX;
|
|
namespace Aiwaz.Contracts
|
|
{
|
|
public enum KeyFrameTarget
|
|
{
|
|
Position = 0,
|
|
Rotation,
|
|
Scale
|
|
}
|
|
|
|
public struct KeyFrame
|
|
{
|
|
KeyFrame(KeyFrameTarget argTarget, Vector3 argValue, float argTime)
|
|
{
|
|
Target = argTarget;
|
|
Value = argValue;
|
|
Time = argTime;
|
|
}
|
|
|
|
KeyFrameTarget Target;
|
|
Vector3 Value;
|
|
float Time;
|
|
}
|
|
|
|
public interface ITransformationAnimation
|
|
{
|
|
float Duration { get; }
|
|
|
|
void AddKeyFrame(KeyFrame argKeyFrame);
|
|
Matrix GetTransformationAtTime(float argT); // [0.0] - [1.0]
|
|
};
|
|
} |