-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathCameraEffector.h
38 lines (28 loc) · 951 Bytes
/
CameraEffector.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
// CameraEffector.h: interface for the CCameraEffector class.
//
#pragma once
#include "../CameraDefs.h"
enum ECameraEffectorType
{
eCEFall,
eCENoise,
eCEShot,
eCEZoom,
eCERecoil,
eCEBobbing,
eCEHit
};
class CCameraEffector
{
protected:
ECameraEffectorType eType;
BOOL bAffected;
float fLifeTime;
public:
CCameraEffector (ECameraEffectorType type, float tm, BOOL affected) {eType = type; fLifeTime=tm; bAffected=affected;};
virtual ~CCameraEffector () {};
IC ECameraEffectorType GetType () {return eType;}
IC BOOL Affected () {return bAffected;}
IC float LifeTime () {return fLifeTime;}
virtual BOOL Process (Fvector &p, Fvector &d, Fvector &n, float& fFov, float& fFar, float& fAspect)= 0;
};