diff options
| author | Felix Morgner <felix.morgner@gmail.com> | 2026-08-24 11:16:07 +0200 |
|---|---|---|
| committer | Felix Morgner <felix.morgner@gmail.com> | 2026-08-24 11:16:07 +0200 |
| commit | c068f22329d5cc722622a2183bbb22eef2093df7 (patch) | |
| tree | 12d56c1aede67988a55e241364606bfbb4dba933 /src/parsec/include/ro_api.h | |
| download | openparsec-main.tar.xz openparsec-main.zip | |
Diffstat (limited to 'src/parsec/include/ro_api.h')
| -rw-r--r-- | src/parsec/include/ro_api.h | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/src/parsec/include/ro_api.h b/src/parsec/include/ro_api.h new file mode 100644 index 0000000..b860840 --- /dev/null +++ b/src/parsec/include/ro_api.h @@ -0,0 +1,84 @@ +/* + * PARSEC HEADER: ro_api.h + */ + +#ifndef _RO_API_H_ +#define _RO_API_H_ + +// default state not necessary +#define NO_DEFAULT_RASTERIZER_STATE + + +// need opengl headers +#include "r_gl.h" + + +// client state bits +enum { + + VTXARRAY_NONE = 0x0000, + VTXARRAY_COLORS = 0x0001, + VTXARRAY_EDGEFLAGS = 0x0002, + VTXARRAY_NORMALS = 0x0004, + VTXARRAY_TEXCOORDS = 0x0008, + VTXARRAY_VERTICES = 0x0010 +}; + + +// vertex pointers config +enum { + + VTXPTRS_NONE, + VTXPTRS_DO_ITER_1, + VTXPTRS_DO_ITER_2, + VTXPTRS_DO_ITER_3, + VTXPTRS_DO_ITER_4, + VTXPTRS_DO_FONT_1, + VTXPTRS_DO_FONT_2, + VTXPTRS_RO_PART_1, + VTXPTRS_RO_POLY_1, + VTXPTRS_RO_POLY_2, + VTXPTRS_RO_POLY_3 +}; + + +// external functions + +void RO_InitializeState(); + +void RO_SetCapability(GLenum cap, bool enable); + +int RO_DepthCmpEnabled(); +int RO_DepthWriteEnabled(); + +void RO_EnableDepthTest( int enable ); +void RO_DepthFunc( GLenum func ); +void RO_DepthMask( GLboolean flag ); +void RO_BlendFunc( GLenum sfactor, GLenum dfactor ); +void RO_AlphaFunc( GLenum func, GLclampf ref ); +void RO_AlphaTest( int enable ); +void RO_PointSmooth( int enable ); +void RO_LineSmooth( int enable ); +void RO_PointSize( GLfloat size ); + +void RO_ClientState( dword statebits ); +int RO_ArrayMakeCurrent( int userid, void *base ); + +void RO_InvalidateRasterizerState(); +void RO_InitRasterizerState( dword itertype, dword raststate, dword rastmask ); +void RO_TextureCombineState( dword texcomb ); + + +#define RO_AllowsExtendedTexenv() FALSE + + +#ifdef NO_DEFAULT_RASTERIZER_STATE + #define RO_DefaultRasterizerState() {} +#else + void RO_DefaultRasterizerState(); +#endif + + +#endif // _RO_API_H_ + + |
