public SmoothCamera(String pName, SceneManager pSceneManager, MovingObject pTarget, Int32 pFramesBehind)
: base(pName, pSceneManager)
{
Node = pSceneManager.RootSceneNode.CreateChildSceneNode();
Node.Position = cameraOffset;
Node.AttachObject(this);
x = new List<double>(pFramesBehind);
y = new List<double>(pFramesBehind);
dx = new List<double>(pFramesBehind);
dy = new List<double>(pFramesBehind);
framesBehind = Math.Max(1, pFramesBehind);
target = pTarget;
for (var i = 0; i < pFramesBehind; i++)
{
x.Add(pTarget.Position.x);
y.Add(pTarget.Position.y);
dx.Add(0);
dy.Add(0);
}
x.Insert(0, pTarget.Position.x);
y.Insert(0, pTarget.Position.y);
dx.Insert(0, pTarget.Velocity.x);
dy.Insert(0, pTarget.Velocity.y);
isYawFixed = true;
FixedYawAxis = Vector3.UnitZ;
Near = 5;
AutoAspectRatio = true;
}