In file include/csengine/rview.h:

class csRenderView : public csCamera

This structure represents all information needed for drawing a scene

Inheritance:


Public Fields

bool added_fog_info
If the following variable is true then a fog_info was added in this recursion level
csDrawFunc* callback
A callback function
void* callback_data
Userdata belonging to the callback.
csPlane clip_plane
This variable holds the plane of the portal through which the camera is looking
bool do_clip_plane
If true then we clip all objects to 'clip_plane'
csFogInfo* fog_info
Every fogged sector we encountered results in an extra structure in the following list
IGraphics2D* g2d
The 2D graphics subsystem used for drawing.
IGraphics3D* g3d
The 3D graphics subsystem used for drawing.
csPolygon3D* portal_polygon
The portal polygon (or NULL if the first sector)
csClipper* view
The 2D polygon describing how everything drawn inside should be clipped.

Public Methods

csRenderView(const csCamera& c, csClipper* v, IGraphics3D* ig3d, IGraphics2D* ig2d)
csRenderView()
csRenderView(const csCamera& c)
void SetClipPlane(csPlane& p)
void SetView(csClipper* v)

Inherited from csCamera:

Public Fields

static int aspect
static float inv_aspect

Public Methods

inline csVector3 Camera2World(const csVector3& v)
inline csVector3 Camera2WorldRelative(const csVector3& v)
void Correct(int n)
inline csMatrix3 GetC2W()
static int GetFOV()
csPolygon3D* GetHit(csVector3& v)
csSector* GetSector()
inline csMatrix3 GetW2C()
inline csVector3 GetW2CTranslation()
bool IsMirrored()
bool LoadFile(csWorld* world, char* filename)
void LookAt(const csVector3& v, const csVector3& up)
void Move(const csVector3& v)
void MoveUnrestricted(const csVector3& v)
void MoveWorld(const csVector3& v)
void MoveWorldUnrestricted(const csVector3& v)
void Rotate(const csVector3& v, float angle)
void Rotate(const csMatrix3& m)
void RotateWorld(const csVector3& v, float angle)
void RotateWorld(const csMatrix3& m)
void SaveFile(char* filename)
inline void SetC2W(const csMatrix3& m)
static void SetFOV(int fov)
void SetMirrored(bool m)
inline void SetPosition(const csVector3& v)
void SetSector(csSector *s)
inline void SetW2C(const csMatrix3& m)
inline csVector3 World2Camera(const csVector3& v)

Private Fields

bool mirror
csSector* sector

Private Methods

void Correct(int n, float* vals[])

Inherited from csOrthoTransform:

Public Methods

virtual void SetO2T(const csMatrix3& m)
virtual void SetT2O(const csMatrix3& m)

Inherited from csReversibleTransform:

Public Methods

csReversibleTransform GetInverse()
inline const csMatrix3& GetT2O()
inline csVector3 GetT2OTranslation()
friend csReversibleTransform operator* (const csReversibleTransform& t1, const csReversibleTransform& t2)
friend csTransform operator* (const csTransform& t1, const csReversibleTransform& t2)
friend csReversibleTransform& operator*= (csReversibleTransform& t1, const csReversibleTransform& t2)
friend csPlane operator/ (const csPlane& p, const csReversibleTransform& t)
friend csVector3 operator/ (const csVector3& v, const csReversibleTransform& t)
friend csReversibleTransform operator/ (const csReversibleTransform& t1, const csReversibleTransform& t2)
friend csVector3& operator/= (csVector3& v, const csReversibleTransform& t)
friend csReversibleTransform& operator/= (csReversibleTransform& t1, const csReversibleTransform& t2)
friend csPlane& operator/= (csPlane& p, const csReversibleTransform& t)
csPlane This2Other(const csPlane& p)
void This2Other(const csPlane& p, const csVector3& point, csPlane& result)
csVector3 This2Other(const csVector3& v)
inline csVector3 This2OtherRelative(const csVector3& v)

Protected Fields

csMatrix3 m_t2o

Inherited from csTransform:

Public Methods

inline const csMatrix3& GetO2T()
inline const csVector3& GetO2TTranslation()
inline const csVector3& GetOrigin()
static csTransform GetReflect(const csPlane& pl)
csPlane Other2This(const csPlane& p)
inline csVector3 Other2This(const csVector3& v)
void Other2This(const csPlane& p, const csVector3& point, csPlane& result)
csVector3 Other2ThisRelative(const csVector3& v)
inline void SetO2TTranslation(const csVector3& v)
inline void SetOrigin(const csVector3& v)
inline void Translate(const csVector3& v)

Protected Fields

csMatrix3 m_o2t
csVector3 v_o2t

Documentation

This structure represents all information needed for drawing a scene. It is closely related to the csCamera class and modified while rendering according to portals/warping portals and such.
csClipper* view
The 2D polygon describing how everything drawn inside should be clipped.

IGraphics3D* g3d
The 3D graphics subsystem used for drawing.

IGraphics2D* g2d
The 2D graphics subsystem used for drawing.

csPolygon3D* portal_polygon
The portal polygon (or NULL if the first sector)

csPlane clip_plane
This variable holds the plane of the portal through which the camera is looking

bool do_clip_plane
If true then we clip all objects to 'clip_plane'. In principle one should always clip to 'clip_plane'. However, in many cases this is not required because portals mostly arrive in at the boundaries of a sector so there can actually be no objects after the portal plane. But it is possible that portals arive somewhere in the middle of a sector (for example with BSP sectors or with Things containing portals). In that case this variable will be set to true and clipping to 'clip_plane' is required.

csDrawFunc* callback
A callback function. If this is set then no drawing is done. Instead the callback function is called.

void* callback_data
Userdata belonging to the callback.

csFogInfo* fog_info
Every fogged sector we encountered results in an extra structure in the following list. This is only used if we are doing vertex based fog.

bool added_fog_info
If the following variable is true then a fog_info was added in this recursion level

csRenderView()

csRenderView(const csCamera& c)

csRenderView(const csCamera& c, csClipper* v, IGraphics3D* ig3d, IGraphics2D* ig2d)

void SetView(csClipper* v)

void SetClipPlane(csPlane& p)


This class has no child classes.

alphabetic index hierarchy of classes


this page has been generated automatically by doc++

(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de