Files
FC1/CryMovie/AnimCameraNode.h
romkazvo 34d6c5d489 123
2023-08-07 19:29:24 +08:00

55 lines
1.7 KiB
C++

////////////////////////////////////////////////////////////////////////////
//
// Crytek Engine Source File.
// Copyright (C), Crytek Studios, 2002.
// -------------------------------------------------------------------------
// File name: animcameranode.h
// Version: v1.00
// Created: 16/8/2002 by Lennert.
// Compilers: Visual Studio.NET
// Description:
// -------------------------------------------------------------------------
// History:
//
////////////////////////////////////////////////////////////////////////////
#ifndef __animcameranode_h__
#define __animcameranode_h__
#if _MSC_VER > 1000
#pragma once
#endif
#include "entitynode.h"
/** Camera node controls camera entity.
*/
class CAnimCameraNode : public CAnimEntityNode
{
private:
IMovieSystem *m_pMovie;
// Field of view in DEGREES! To Display it nicely for user.
float m_fFOV;
public:
CAnimCameraNode(IMovieSystem *sys );
virtual ~CAnimCameraNode();
virtual EAnimNodeType GetType() const { return ANODE_CAMERA; }
virtual void Animate( SAnimContext &ec );
virtual void CreateDefaultTracks();
virtual void Reset();
float GetFOV() { return m_fFOV; }
//////////////////////////////////////////////////////////////////////////
int GetParamCount() const;
bool GetParamInfo( int nIndex, SParamInfo &info ) const;
bool GetParamInfoFromId( int paramId, SParamInfo &info ) const;
//////////////////////////////////////////////////////////////////////////
bool SetParamValue( float time,AnimParamType param,float value );
bool GetParamValue( float time,AnimParamType param,float &value );
IAnimTrack* CreateTrack(AnimParamType nParamType);
void Serialize( XmlNodeRef &xmlNode,bool bLoading );
};
#endif // __animcameranode_h__