diff options
| author | Steven Fuller <relnev@icculus.org> | 2001-07-01 00:55:22 +0000 |
|---|---|---|
| committer | Patryk Obara <dreamer.tan@gmail.com> | 2019-08-20 02:09:04 +0200 |
| commit | 2186d5f3f95cd74a070a490d899291648d58667a (patch) | |
| tree | 55241a1afa3e1a22e0b6593a8dead0b703800f44 /src/win95/d3_func.h | |
| parent | 218ca90543758a20ac326e444ca0643174ca7384 (diff) | |
Initial revision
Diffstat (limited to 'src/win95/d3_func.h')
| -rw-r--r-- | src/win95/d3_func.h | 106 |
1 files changed, 106 insertions, 0 deletions
diff --git a/src/win95/d3_func.h b/src/win95/d3_func.h new file mode 100644 index 0000000..eedbd5e --- /dev/null +++ b/src/win95/d3_func.h @@ -0,0 +1,106 @@ +#ifndef _included_d3_func_h_ +#define _included_d3_func_h_ + +#ifdef __cplusplus +extern "C" { +#endif + +/* + Direct3D globals +*/ + +/* + Maximum number of Direct3D drivers ever + expected to be resident on the system. +*/ +#define MAX_D3D_DRIVERS 5 +/* + Maximum number of texture formats ever + expected to be reported by a Direct3D + driver. +*/ +#define MAX_TEXTURE_FORMATS 10 + +/* + Description of a D3D driver. +*/ + +typedef struct D3DDriverInfo { + char Name[30]; /* short name of driver */ + char About[50]; /* string about driver */ + D3DDEVICEDESC Desc; /* full driver description */ + GUID Guid; /* wacky universally unique id thingy */ + BOOL Hardware; /* accelerated driver? */ + BOOL Textures; /* Texture mapping available? */ + BOOL ZBuffer; /* Z Buffering available? */ +} D3DDRIVERINFO; + +/* + Description of a D3D driver texture + format. +*/ + +typedef struct D3DTextureFormat { + DDSURFACEDESC ddsd; /* DDSURFACEDESC for the surface description */ + BOOL Palette; /* is Palettized? */ + int RedBPP; /* #red bits per pixel */ + int BlueBPP; /* #blue bits per pixel */ + int GreenBPP; /* #green bits per pixel */ + int IndexBPP; /* number of bits in palette index */ +} D3DTEXTUREFORMAT; + + +typedef struct D3DInfo { + LPDIRECT3D lpD3D; + LPDIRECT3DDEVICE lpD3DDevice; + LPDIRECT3DVIEWPORT lpD3DViewport; + int NumDrivers; + int CurrentDriver; + D3DDEVICEDESC ThisDriver; + D3DDRIVERINFO Driver[MAX_D3D_DRIVERS]; + int CurrentTextureFormat; + int NumTextureFormats; + D3DTEXTUREFORMAT TextureFormat[MAX_TEXTURE_FORMATS]; +} D3DINFO; + + + +/* KJL 14:24:45 12/4/97 - render state information */ +enum TRANSLUCENCY_TYPE +{ + TRANSLUCENCY_OFF, + TRANSLUCENCY_NORMAL, + TRANSLUCENCY_INVCOLOUR, + TRANSLUCENCY_COLOUR, + TRANSLUCENCY_GLOWING, + TRANSLUCENCY_DARKENINGCOLOUR, + TRANSLUCENCY_JUSTSETZ, + TRANSLUCENCY_NOT_SET +}; + +enum FILTERING_MODE_ID +{ + FILTERING_BILINEAR_OFF, + FILTERING_BILINEAR_ON, + FILTERING_NOT_SET +}; + +typedef struct +{ + enum TRANSLUCENCY_TYPE TranslucencyMode; + enum FILTERING_MODE_ID FilteringMode; + int FogDistance; + unsigned int FogIsOn :1; + unsigned int WireFrameModeIsOn :1; + +} RENDERSTATES; + + + + + +#ifdef __cplusplus +} +#endif + +#endif /* ! _included_d3_func_h_ */ |
