#pragma once #include "defines.h" #include #include #include #include #include "VUMeter.h" //#include "ScriptState.h" #include "Renderjob.h" #include "Texture.h" #include "Shader.h" #include "PSSM.h" #include "random.h" #include "camera.h" ///////////////////////////////////////////////////////////////////////////// // Globale Daten ///////////////////////////////////////////////////////////////////////////// extern IDirect3D9 *g_D3D; extern IDirect3DDevice9 *g_d3d_device; extern D3DPRESENT_PARAMETERS d3dpp; extern UINT g_nShadowResolution; extern float g_fResolutionFactor; extern int g_iResolutionFactorExp; extern D3DLIGHT9 d3dLight[3]; extern D3DMATERIAL9 d3dMaterial; extern D3DXMATRIX g_matView; extern D3DXMATRIX g_matProjection; extern D3DXMATRIX g_matVP; extern D3DXMATRIX g_matWVP; enum TextureIndices { TI_RotMatrix= 0, TI_Random= 1, TI_RandomCube= 2, TI_LightSpec1D= 7, TI_First1D= 8, TI_White= 8, TI_Light1D= 9, TI_LightTest= 10, TI_Rainbow= 11, TextureCount= 32, TI_IgnoreSetting= -1, TI_CLAMP= -2, }; extern Texture g_pTextures[ TextureCount ]; enum RenderTargetIndices { RT_DEPTH, RT_COLOR, RT_AUX1, RT_AUX2, RT_SHADOW, RT_COUNT }; extern IDirect3DTexture9* g_pFullScreenRT[ RT_COUNT ]; enum RenderTargetSurfaceIndices { RTS_DEFAULT_DS, RTS_DEPTH, RTS_DEPTH_MS, RTS_COLOR, RTS_COLOR_MS, RTS_AUX1, RTS_AUX2, RTS_SHADOW, RTS_SHADOW_DS, RTS_COUNT }; extern IDirect3DSurface9* g_pFullScreenRTS[ RTS_COUNT ]; extern SCameraDefinition g_Camera; extern D3DXVECTOR3 g_CamFront; extern D3DXVECTOR3 g_LightDir; extern float g_fGlow; extern float g_fClouds; extern float g_fPlasmaGrid; extern PSSM g_PSSM; enum ObjectIndices { Streets= 0, OI_BuildingFirst= 32, OI_BuildingLast= 127, OI_FlockFirst= 128, OI_FlockLast= 256, OI_BlockTreeFirst= 256, OI_BlockTreeLast= 384, OI_BowFront= 384, OI_Text= 512, OI_TextLast= 639, ObjectCount= 1024 }; extern Renderjob g_Objects[ ObjectCount ]; extern Renderjob* g_pEditObject; extern Renderjob g_SkyBox; extern Renderjob g_FullScreenQuad; const int g_iShaderCount= 64; extern Shader g_Shaders[ g_iShaderCount ]; #ifndef STARTMUSIC extern DWORD g_dwTimeReplaceStart; #endif extern int g_iTempo; const int g_iSampleOffsetGeneral= 2205; extern int g_iSampleOffset; extern int g_dwSamplesPassed; extern int g_dwSamples; extern SVUMeter g_vuLightBeat; extern SVUMeter g_vuOffBeat; //extern ScriptState g_ScriptState; extern RandomGenerator g_Random; #ifdef EXTRACODE //extern unsigned char g_Script[ 2048 ]; //extern float g_ScriptParamFloat[ 512 ]; #else //#include "scriptdata.h" #endif enum ShaderIndices { PreDepth, PSSM_Proj, SSAO, SSAO_BlurH, SSAO_BlurV, DOF_Intensity, DOF, BlurBilH, BlurBilV, Ray_Mask, Ray_Extrude, BlurH, BlurV, Extract_InvAlpha, Phong, Rainbow, Tarmac, Grass, Wall, Sky, SkyDepth, Text, }; #ifdef EXTRACODE extern char g_ShaderVSGeneral[ 65536 ]; extern char g_ShaderPSPhong[ 65536 ]; extern char g_ShaderPSRainbow[ 65536 ]; extern char g_ShaderPSTarmac[ 65536 ]; extern char g_ShaderPSGrass[ 65536 ]; extern char g_ShaderPSWall[ 65536 ]; extern char g_ShaderPSDepth[ 65536 ]; extern char g_ShaderPSText[ 65536 ]; extern char g_ShaderVSSky[ 65536 ]; extern char g_ShaderPSSky[ 65536 ]; extern char g_ShaderVSFSQuad[ 65536 ]; extern char g_ShaderPSPSSM[ 65536 ]; extern char g_ShaderPSAmbOcc[ 65536 ]; extern char g_ShaderPSDOF[ 65536 ]; extern char g_ShaderPSRay[ 65536 ]; extern char g_ShaderPSBlur[ 65536 ]; #else #include "shaderdata.h" #endif #ifdef EXTRACODE #include "schmierdat.h" #else #include "schmierdat.h" #endif void InitGlobals();