summaryrefslogtreecommitdiff
path: root/src/win95/d3_func.h
diff options
context:
space:
mode:
authorSteven Fuller <relnev@icculus.org>2001-07-01 00:55:22 +0000
committerPatryk Obara <dreamer.tan@gmail.com>2019-08-20 02:09:04 +0200
commit2186d5f3f95cd74a070a490d899291648d58667a (patch)
tree55241a1afa3e1a22e0b6593a8dead0b703800f44 /src/win95/d3_func.h
parent218ca90543758a20ac326e444ca0643174ca7384 (diff)
Initial revision
Diffstat (limited to 'src/win95/d3_func.h')
-rw-r--r--src/win95/d3_func.h106
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_ */