Restructure repository to include all source folders
Move git root from Client/ to src/ to track all source code: - Client: Game client source (moved to Client/Client/) - Server: Game server source - GameTools: Development tools - CryptoSource: Encryption utilities - database: Database scripts - Script: Game scripts - rylCoder_16.02.2008_src: Legacy coder tools - GMFont, Game: Additional resources 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
75
GameTools/ZALLA3D BASECLASS/ShadowMap.cpp
Normal file
75
GameTools/ZALLA3D BASECLASS/ShadowMap.cpp
Normal file
@@ -0,0 +1,75 @@
|
||||
// ShadowMap.cpp: implementation of the CShadowMap class.
|
||||
//
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
|
||||
#include "ShadowMap.h"
|
||||
#include "BaseGraphicsLayer.h"
|
||||
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
// Construction/Destruction
|
||||
//////////////////////////////////////////////////////////////////////
|
||||
|
||||
//LPDIRECT3DSURFACE8 CShadowMap::m_pShadowMapColorSurface=NULL;
|
||||
//LPDIRECT3DSURFACE8 CShadowMap::m_pShadowMapZSurface=NULL;
|
||||
//LPDIRECT3DTEXTURE8 CShadowMap::m_pShadowMapColorTexture=NULL;
|
||||
//LPDIRECT3DTEXTURE8 CShadowMap::m_pShadowMapZTexture=NULL;
|
||||
|
||||
LPDIRECT3DSURFACE8 CShadowMap::m_pTempRenderSurface;
|
||||
LPDIRECT3DSURFACE8 CShadowMap::m_pTempRenderZBuffer;
|
||||
D3DVIEWPORT8 CShadowMap::m_pTempViewPort;
|
||||
//D3DVIEWPORT8 CShadowMap::m_Viewport;
|
||||
|
||||
|
||||
CShadowMap::CShadowMap()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
CShadowMap::~CShadowMap()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void CShadowMap::Create(long SizeX, long SizeY)
|
||||
{
|
||||
if( BaseGraphicsLayer::m_d3dpp.BackBufferFormat==D3DFMT_A8R8G8B8 ||
|
||||
BaseGraphicsLayer::m_d3dpp.BackBufferFormat==D3DFMT_X8R8G8B8 )
|
||||
{
|
||||
BaseGraphicsLayer::GetDevice()->CreateTexture(SizeX,SizeY,1,D3DUSAGE_RENDERTARGET,D3DFMT_A8R8G8B8,D3DPOOL_DEFAULT,&m_pShadowMapColorTexture);
|
||||
BaseGraphicsLayer::GetDevice()->CreateTexture(SizeX,SizeY,1,D3DUSAGE_DEPTHSTENCIL,D3DFMT_D24S8,D3DPOOL_DEFAULT,&m_pShadowMapZTexture);
|
||||
}
|
||||
if( BaseGraphicsLayer::m_d3dpp.BackBufferFormat==D3DFMT_R5G6B5)
|
||||
{
|
||||
BaseGraphicsLayer::GetDevice()->CreateTexture(SizeX,SizeY,1,D3DUSAGE_RENDERTARGET,D3DFMT_R5G6B5,D3DPOOL_DEFAULT,&m_pShadowMapColorTexture);
|
||||
BaseGraphicsLayer::GetDevice()->CreateTexture(SizeX,SizeY,1,D3DUSAGE_DEPTHSTENCIL,D3DFMT_D16,D3DPOOL_DEFAULT,&m_pShadowMapZTexture);
|
||||
}
|
||||
|
||||
m_pShadowMapColorTexture->GetSurfaceLevel(0,&m_pShadowMapColorSurface);
|
||||
m_pShadowMapZTexture->GetSurfaceLevel(0,&m_pShadowMapZSurface);
|
||||
|
||||
m_Viewport.X=0;
|
||||
m_Viewport.Y=0;
|
||||
m_Viewport.Width=SizeX;
|
||||
m_Viewport.Height=SizeY;
|
||||
m_Viewport.MinZ=0.0f;
|
||||
m_Viewport.MaxZ=1.0f;
|
||||
|
||||
}
|
||||
|
||||
void CShadowMap::Begin(LPDIRECT3DDEVICE8 pd3dDevice)
|
||||
{
|
||||
pd3dDevice->GetViewport(&m_pTempViewPort);
|
||||
pd3dDevice->GetRenderTarget(&m_pTempRenderSurface);
|
||||
pd3dDevice->GetDepthStencilSurface(&m_pTempRenderZBuffer);
|
||||
pd3dDevice->SetRenderTarget(m_pShadowMapColorSurface,m_pShadowMapZSurface);
|
||||
|
||||
pd3dDevice->SetViewport(&m_Viewport);
|
||||
}
|
||||
|
||||
void CShadowMap::End(LPDIRECT3DDEVICE8 pd3dDevice)
|
||||
{
|
||||
pd3dDevice->SetRenderTarget(m_pTempRenderSurface,m_pTempRenderZBuffer);
|
||||
pd3dDevice->SetViewport(&m_pTempViewPort);
|
||||
m_pTempRenderSurface->Release();
|
||||
m_pTempRenderZBuffer->Release();
|
||||
}
|
||||
Reference in New Issue
Block a user