CrystalSpace

Public API Reference

Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

render3d.h File Reference

New 3D graphics interface. More...

#include "csutil/scf.h"

Go to the source code of this file.

Compounds

struct  iRender3D
 New 3D Interface. More...

class  csRender3dCaps
 A triangle. More...


iRender3D::BeginDraw() flags

#define CSDRAW_2DGRAPHICS   0x00000001
 We're going to draw 2D graphics. More...

#define CSDRAW_3DGRAPHICS   0x00000002
 We're going to draw 3D graphics. More...

#define CSDRAW_CLEARZBUFFER   0x00000010
 Clear Z-buffer ? More...

#define CSDRAW_CLEARSCREEN   0x00000020
 Clear frame buffer ? More...


Type of clipper (for iGraphics3D::SetClipper())

#define CS_CLIPPER_NONE   -1
 There is no clipper. More...

#define CS_CLIPPER_OPTIONAL   0
 Clipper is optional. More...

#define CS_CLIPPER_TOPLEVEL   1
 Clipper is top-level. More...

#define CS_CLIPPER_REQUIRED   2
 Clipper is required. More...


Clipping requirement for DrawTriangleMesh

#define CS_CLIP_NOT   0
 No clipping required. More...

#define CS_CLIP_NEEDED   1
 Clipping may be needed. More...

#define CS_CLIP_TOPLEVEL   2
 Clipping is not needed for the current clipper but it might be needed for the toplevel clipper. More...


Mix modes for DrawPolygonFX ()

The constants can be ORed together if they belong to different masks.

#define CS_FX_MASK_MIXMODE   0xF0000000
 SRC/DST mixing mode mask. More...

#define CS_FX_COPY   0x00000000
 =SRC. More...

#define CS_FX_MULTIPLY   0x10000000
 =SRC*DST. More...

#define CS_FX_MULTIPLY2   0x20000000
 =2*SRC*DST. More...

#define CS_FX_ADD   0x30000000
 =SRC+DST. More...

#define CS_FX_ALPHA   0x40000000
 =(1-alpha)*SRC + alpha*DST. More...

#define CS_FX_TRANSPARENT   0x50000000
 =DST. More...

#define CS_FX_DESTALPHAADD   0x60000000
 =(dstalpha)*SRC + DST. More...

#define CS_FX_KEYCOLOR   0x08000000
 color 0 is transparent. More...

#define CS_FX_GOURAUD   0x04000000
 Gouraud shading. More...

#define CS_FX_TILING   0x02000000
 Tiling. More...

#define CS_FX_MASK_ALPHA   0x000000FF
 alpha = 0..FF (opaque..transparent). More...

#define CS_FX_SETALPHA(alpha)   (CS_FX_ALPHA | uint (alpha * CS_FX_MASK_ALPHA))
 Macro for setting of alpha bits into mixmode (alpha between 0 and 1). More...

#define CS_FX_SETALPHA_INT(alpha)   (CS_FX_ALPHA | uint (alpha & CS_FX_MASK_ALPHA))
 Macro for setting of alpha bits into mixmode (alpha between 0 and 255). More...


Light parameters

#define CS_LIGHTPARAM_POSITION   0
 Position of the light. More...

#define CS_LIGHTPARAM_DIFFUSE   1
 Diffuse color of the light. More...

#define CS_LIGHTPARAM_SPECULAR   2
 Specular color of the light. More...

#define CS_LIGHTPARAM_ATTENUATION   3
 Attenuation of the light. More...


Shadow states

#define CS_SHADOW_VOLUME_BEGIN   1
 Clear stencil. More...

#define CS_SHADOW_VOLUME_PASS1   2
 Setup for pass 1. More...

#define CS_SHADOW_VOLUME_PASS2   3
 Setup for pass 2. More...

#define CS_SHADOW_VOLUME_FAIL1   4
 Setup for carmack's reverse pass 1. More...

#define CS_SHADOW_VOLUME_FAIL2   5
 Setup for carmack's reverse pass 2. More...

#define CS_SHADOW_VOLUME_USE   6
 Setup for shadow masking. More...

#define CS_SHADOW_VOLUME_FINISH   7
 Restore states. More...


Enumerations

enum  csZBufMode {
  CS_ZBUF_NONE = 0x00000000, CS_ZBUF_FILL = 0x00000001, CS_ZBUF_TEST = 0x00000002, CS_ZBUF_USE = 0x00000003,
  CS_ZBUF_FILLONLY = 0x00000004, CS_ZBUF_EQUAL = 0x00000005, CS_ZBUF_INVERT = 0x00000006
}
 Z-buffer modes. More...

enum  csVertexAttrib
 Vertex attributes. More...

enum  R3D_RENDERSTATEOPTION
 Graphics3D render state options. More...


Detailed Description

New 3D graphics interface.

Definition in file render3d.h.


Generated for Crystal Space by doxygen 1.2.14