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