@@ -40,6 +40,7 @@ enum CustomScenePassModes CPP_11(: Int);
4040enum StaticGameLODLevel CPP_11 (: Int);
4141enum ChipsetType CPP_11 (: Int);
4242enum CpuType CPP_11 (: Int);
43+ enum GraphicsVenderID CPP_11 (: Int);
4344
4445class TextureClass ; // /forward reference
4546/* * System for managing complex rendering settings which are either not handled by
@@ -65,6 +66,11 @@ class W3DShaderManager
6566 ST_ROAD_BASE_NOISE2, // shader to apply base texture and cloud/noise 2.
6667 ST_ROAD_BASE_NOISE12,// shader to apply base texture and both cloud/noise
6768 ST_CLOUD_TEXTURE, // shader to project clouds.
69+ ST_FLAT_TERRAIN_BASE, // shader to apply base terrain texture only
70+ ST_FLAT_TERRAIN_BASE_NOISE1, // shader to apply base texture and cloud/noise 1.
71+ ST_FLAT_TERRAIN_BASE_NOISE2, // shader to apply base texture and cloud/noise 2.
72+ ST_FLAT_TERRAIN_BASE_NOISE12,// shader to apply base texture and both cloud/noise
73+ ST_FLAT_SHROUD_TEXTURE, // shader to apply shroud texture projection.
6874 ST_MAX
6975 };
7076
@@ -75,8 +81,11 @@ class W3DShaderManager
7581 static void updateCloud (); // /<update the cloud position once every render frame.
7682
7783 static ChipsetType getChipset (void ); // /<return current device chipset.
84+ static GraphicsVenderID getCurrentVendor (void ) {return m_currentVendor;} // /<return current card vendor.
85+ static __int64 getCurrentDriverVersion (void ) {return m_driverVersion; } // /<return current driver version.
7886 static Int getShaderPasses (ShaderTypes shader); // /<rendering passes required for shader
7987 static Int setShader (ShaderTypes shader, Int pass); // /<enable specific shader pass.
88+ static Int setShroudTex (Int stage); // /<Set shroud in a texture stage.
8089 static void resetShader (ShaderTypes shader); // /<make sure W3D2 gets restored to normal
8190 // /Specify all textures (up to 8) which can be accessed by the shaders.
8291 static void setTexture (Int stage,TextureClass* texture) {m_Textures[stage]=texture;}
@@ -101,12 +110,15 @@ class W3DShaderManager
101110 static void startRenderToTexture (void ); // /< Sets render target to texture.
102111 static IDirect3DTexture8 * endRenderToTexture (void ); // /< Ends render to texture, & returns texture.
103112 static IDirect3DTexture8 * getRenderTexture (void ); // /< returns last used render target texture
113+ static Bool isRenderingToTexture (void ) {return m_renderingToTexture; }
104114 static void drawViewport (Int color); // /<draws 2 triangles covering the current tactical viewport
105115
106116
107117protected:
108118 static TextureClass *m_Textures[8 ]; // /textures assigned to each of the possible stages
109119 static ChipsetType m_currentChipset; // /<last video card chipset that was detected.
120+ static GraphicsVenderID m_currentVendor; // /<last video card vendor
121+ static __int64 m_driverVersion; // /<driver version of last chipset.
110122 static ShaderTypes m_currentShader; // /<last shader that was set.
111123 static Int m_currentShaderPass; // /<pass of last shader that was set.
112124
0 commit comments