mirror of
https://github.com/nillerusr/source-engine.git
synced 2024-12-22 06:06:50 +00:00
810 lines
25 KiB
C++
810 lines
25 KiB
C++
//========= Copyright Valve Corporation, All rights reserved. ============//
|
|
//
|
|
// Purpose:
|
|
//
|
|
// $NoKeywords: $
|
|
//=============================================================================//
|
|
|
|
#ifndef STUBD3DDEVICE_H
|
|
#define STUBD3DDEVICE_H
|
|
#ifdef _WIN32
|
|
#pragma once
|
|
#endif
|
|
|
|
#ifdef STUBD3D
|
|
|
|
#include "locald3dtypes.h"
|
|
#include "filesystem.h"
|
|
|
|
#ifdef USE_FOPEN
|
|
#include <stdio.h>
|
|
#define FPRINTF fprintf
|
|
#else
|
|
#define FPRINTF s_pFileSystem->FPrintf
|
|
#endif
|
|
|
|
#ifdef USE_FOPEN
|
|
|
|
static FILE *s_FileHandle;
|
|
|
|
#else
|
|
|
|
static IFileSystem *s_pFileSystem;
|
|
static FileHandle_t s_FileHandle;
|
|
|
|
#endif
|
|
|
|
|
|
|
|
class CStubD3DTexture : public IDirect3DTexture8
|
|
{
|
|
private:
|
|
IDirect3DTexture8 *m_pTexture;
|
|
IDirect3DDevice8 *m_pDevice;
|
|
|
|
public:
|
|
CStubD3DTexture( IDirect3DTexture8 *pTexture, IDirect3DDevice8 *pDevice )
|
|
{
|
|
m_pTexture = pTexture;
|
|
m_pDevice = pDevice;
|
|
}
|
|
|
|
/*** IUnknown methods ***/
|
|
HRESULT __stdcall QueryInterface(REFIID riid, void** ppvObj)
|
|
{
|
|
FPRINTF( s_FileHandle, "IDirect3DTexture8::QueryInterface\n" );
|
|
return m_pTexture->QueryInterface( riid, ppvObj );
|
|
}
|
|
|
|
ULONG __stdcall AddRef()
|
|
{
|
|
FPRINTF( s_FileHandle, "IDirect3DTexture8::AddRef\n" );
|
|
return m_pTexture->AddRef();
|
|
}
|
|
|
|
ULONG __stdcall Release()
|
|
{
|
|
FPRINTF( s_FileHandle, "IDirect3DTexture8::Release\n" );
|
|
return m_pTexture->Release();
|
|
}
|
|
|
|
/*** IDirect3DBaseTexture8 methods ***/
|
|
HRESULT __stdcall GetDevice( IDirect3DDevice8** ppDevice )
|
|
{
|
|
FPRINTF( s_FileHandle, "IDirect3DTexture8::GetDevice\n" );
|
|
#if 0
|
|
*ppDevice = m_pDevice;
|
|
return D3D_OK;
|
|
#else
|
|
return m_pTexture->GetDevice( ppDevice );
|
|
#endif
|
|
}
|
|
|
|
HRESULT __stdcall SetPrivateData( REFGUID refguid,CONST void* pData,DWORD SizeOfData,DWORD Flags)
|
|
{
|
|
FPRINTF( s_FileHandle, "IDirect3DTexture8::SetPrivateData\n" );
|
|
return m_pTexture->SetPrivateData( refguid, pData, SizeOfData, Flags );
|
|
}
|
|
|
|
HRESULT __stdcall GetPrivateData( REFGUID refguid,void* pData,DWORD* pSizeOfData )
|
|
{
|
|
FPRINTF( s_FileHandle, "IDirect3DTexture8::GetPrivateData\n" );
|
|
return m_pTexture->GetPrivateData( refguid, pData, pSizeOfData );
|
|
}
|
|
|
|
HRESULT __stdcall FreePrivateData( REFGUID refguid )
|
|
{
|
|
FPRINTF( s_FileHandle, "IDirect3DTexture8::GetPrivateData\n" );
|
|
return m_pTexture->FreePrivateData( refguid );
|
|
}
|
|
|
|
DWORD __stdcall SetPriority( DWORD PriorityNew )
|
|
{
|
|
FPRINTF( s_FileHandle, "IDirect3DTexture8::SetPriority\n" );
|
|
return m_pTexture->SetPriority( PriorityNew );
|
|
}
|
|
|
|
DWORD __stdcall GetPriority()
|
|
{
|
|
FPRINTF( s_FileHandle, "IDirect3DTexture8::GetPriority\n" );
|
|
return m_pTexture->GetPriority();
|
|
}
|
|
|
|
void __stdcall PreLoad()
|
|
{
|
|
FPRINTF( s_FileHandle, "IDirect3DTexture8::PreLoad\n" );
|
|
m_pTexture->PreLoad();
|
|
}
|
|
|
|
D3DRESOURCETYPE __stdcall GetType()
|
|
{
|
|
FPRINTF( s_FileHandle, "IDirect3DTexture8::GetType\n" );
|
|
return m_pTexture->GetType();
|
|
}
|
|
|
|
DWORD __stdcall SetLOD( DWORD LODNew )
|
|
{
|
|
FPRINTF( s_FileHandle, "IDirect3DTexture8::SetLOD\n" );
|
|
return m_pTexture->SetLOD( LODNew );
|
|
}
|
|
|
|
DWORD __stdcall GetLOD()
|
|
{
|
|
FPRINTF( s_FileHandle, "IDirect3DTexture8::GetLOD\n" );
|
|
return m_pTexture->GetLOD();
|
|
}
|
|
|
|
DWORD __stdcall GetLevelCount()
|
|
{
|
|
FPRINTF( s_FileHandle, "IDirect3DTexture8::GetLevelCount\n" );
|
|
return m_pTexture->GetLevelCount();
|
|
}
|
|
|
|
HRESULT __stdcall GetLevelDesc(UINT Level,D3DSURFACE_DESC *pDesc)
|
|
{
|
|
FPRINTF( s_FileHandle, "IDirect3DTexture8::GetLevelCount\n" );
|
|
return m_pTexture->GetLevelDesc( Level, pDesc );
|
|
}
|
|
|
|
HRESULT __stdcall GetSurfaceLevel(UINT Level,IDirect3DSurface8** ppSurfaceLevel)
|
|
{
|
|
FPRINTF( s_FileHandle, "IDirect3DTexture8::GetSurfaceLevel\n" );
|
|
return m_pTexture->GetSurfaceLevel( Level, ppSurfaceLevel );
|
|
}
|
|
|
|
HRESULT __stdcall LockRect(UINT Level,D3DLOCKED_RECT* pLockedRect,CONST RECT* pRect,DWORD Flags)
|
|
{
|
|
FPRINTF( s_FileHandle, "IDirect3DTexture8::LockRect\n" );
|
|
return m_pTexture->LockRect( Level, pLockedRect, pRect, Flags );
|
|
}
|
|
|
|
HRESULT __stdcall UnlockRect(UINT Level)
|
|
{
|
|
FPRINTF( s_FileHandle, "IDirect3DTexture8::UnlockRect\n" );
|
|
return m_pTexture->UnlockRect( Level );
|
|
}
|
|
|
|
HRESULT __stdcall AddDirtyRect( CONST RECT* pDirtyRect )
|
|
{
|
|
FPRINTF( s_FileHandle, "IDirect3DTexture8::AddDirtyRect\n" );
|
|
return m_pTexture->AddDirtyRect( pDirtyRect );
|
|
}
|
|
};
|
|
|
|
class CStubD3DDevice : public IDirect3DDevice8
|
|
{
|
|
public:
|
|
CStubD3DDevice( IDirect3DDevice8 *pD3DDevice, IFileSystem *pFileSystem )
|
|
{
|
|
Assert( pD3DDevice );
|
|
m_pD3DDevice = pD3DDevice;
|
|
#ifdef USE_FOPEN
|
|
s_FileHandle = fopen( "stubd3d.txt", "w" );
|
|
#else
|
|
Assert( pFileSystem );
|
|
s_pFileSystem = pFileSystem;
|
|
s_FileHandle = pFileSystem->Open( "stubd3d.txt", "w" );
|
|
#endif
|
|
}
|
|
|
|
~CStubD3DDevice()
|
|
{
|
|
#ifdef USE_FOPEN
|
|
fclose( s_FileHandle );
|
|
#else
|
|
s_pFileSystem->Close( s_FileHandle );
|
|
#endif
|
|
}
|
|
|
|
private:
|
|
IDirect3DDevice8 *m_pD3DDevice;
|
|
|
|
public:
|
|
/*** IUnknown methods ***/
|
|
HRESULT __stdcall QueryInterface(REFIID riid, void** ppvObj)
|
|
{
|
|
FPRINTF( s_FileHandle, "QueryInterface\n" );
|
|
return m_pD3DDevice->QueryInterface( riid, ppvObj );
|
|
}
|
|
|
|
ULONG __stdcall AddRef()
|
|
{
|
|
FPRINTF( s_FileHandle, "AddRef\n" );
|
|
return m_pD3DDevice->AddRef();
|
|
}
|
|
|
|
ULONG __stdcall Release()
|
|
{
|
|
FPRINTF( s_FileHandle, "Release\n" );
|
|
return m_pD3DDevice->Release();
|
|
delete this;
|
|
}
|
|
|
|
/*** IDirect3DDevice8 methods ***/
|
|
HRESULT __stdcall TestCooperativeLevel()
|
|
{
|
|
FPRINTF( s_FileHandle, "TestCooperativeLevel\n" );
|
|
return m_pD3DDevice->TestCooperativeLevel();
|
|
}
|
|
|
|
UINT __stdcall GetAvailableTextureMem()
|
|
{
|
|
FPRINTF( s_FileHandle, "GetAvailableTextureMem\n" );
|
|
return m_pD3DDevice->GetAvailableTextureMem();
|
|
}
|
|
|
|
HRESULT __stdcall ResourceManagerDiscardBytes(DWORD Bytes)
|
|
{
|
|
FPRINTF( s_FileHandle, "ResourceManagerDiscardBytes\n" );
|
|
return m_pD3DDevice->ResourceManagerDiscardBytes( Bytes );
|
|
}
|
|
|
|
HRESULT __stdcall GetDirect3D(IDirect3D8** ppD3D8)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetDirect3D\n" );
|
|
return m_pD3DDevice->GetDirect3D( ppD3D8 );
|
|
}
|
|
|
|
HRESULT __stdcall GetDeviceCaps(D3DCAPS8* pCaps)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetDeviceCaps\n" );
|
|
return m_pD3DDevice->GetDeviceCaps( pCaps );
|
|
}
|
|
|
|
HRESULT __stdcall GetDisplayMode(D3DDISPLAYMODE* pMode)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetDisplayMode\n" );
|
|
return m_pD3DDevice->GetDisplayMode( pMode );
|
|
}
|
|
|
|
HRESULT __stdcall GetCreationParameters(D3DDEVICE_CREATION_PARAMETERS *pParameters)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetCreationParameters\n" );
|
|
return m_pD3DDevice->GetCreationParameters( pParameters );
|
|
}
|
|
|
|
HRESULT __stdcall SetCursorProperties(UINT XHotSpot,UINT YHotSpot,IDirect3DSurface8* pCursorBitmap)
|
|
{
|
|
FPRINTF( s_FileHandle, "SetCursorProperties\n" );
|
|
return m_pD3DDevice->SetCursorProperties( XHotSpot, YHotSpot, pCursorBitmap );
|
|
}
|
|
|
|
void __stdcall SetCursorPosition(UINT XScreenSpace,UINT YScreenSpace,DWORD Flags)
|
|
{
|
|
FPRINTF( s_FileHandle, "SetCursorPosition\n" );
|
|
m_pD3DDevice->SetCursorPosition( XScreenSpace, YScreenSpace, Flags );
|
|
}
|
|
|
|
BOOL __stdcall ShowCursor(BOOL bShow)
|
|
{
|
|
FPRINTF( s_FileHandle, "ShowCursor\n" );
|
|
return m_pD3DDevice->ShowCursor( bShow );
|
|
}
|
|
|
|
HRESULT __stdcall CreateAdditionalSwapChain(D3DPRESENT_PARAMETERS* pPresentationParameters,IDirect3DSwapChain8** pSwapChain)
|
|
{
|
|
FPRINTF( s_FileHandle, "CreateAdditionalSwapChain\n" );
|
|
return m_pD3DDevice->CreateAdditionalSwapChain( pPresentationParameters, pSwapChain );
|
|
}
|
|
|
|
HRESULT __stdcall Reset(D3DPRESENT_PARAMETERS* pPresentationParameters)
|
|
{
|
|
FPRINTF( s_FileHandle, "Reset\n" );
|
|
return m_pD3DDevice->Reset( pPresentationParameters );
|
|
}
|
|
|
|
HRESULT __stdcall Present(CONST RECT* pSourceRect,CONST RECT* pDestRect,HWND hDestWindowOverride,CONST RGNDATA* pDirtyRegion)
|
|
{
|
|
FPRINTF( s_FileHandle, "Present\n" );
|
|
return m_pD3DDevice->Present( pSourceRect, pDestRect, hDestWindowOverride, pDirtyRegion );
|
|
}
|
|
|
|
HRESULT __stdcall GetBackBuffer(UINT BackBuffer,D3DBACKBUFFER_TYPE Type,IDirect3DSurface8** ppBackBuffer)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetBackBuffer\n" );
|
|
return m_pD3DDevice->GetBackBuffer( BackBuffer, Type, ppBackBuffer );
|
|
}
|
|
|
|
HRESULT __stdcall GetRasterStatus(D3DRASTER_STATUS* pRasterStatus)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetRasterStatus\n" );
|
|
return m_pD3DDevice->GetRasterStatus( pRasterStatus );
|
|
}
|
|
|
|
void __stdcall SetGammaRamp(DWORD Flags,CONST D3DGAMMARAMP* pRamp)
|
|
{
|
|
FPRINTF( s_FileHandle, "SetGammaRamp\n" );
|
|
m_pD3DDevice->SetGammaRamp( Flags, pRamp );
|
|
}
|
|
|
|
void __stdcall GetGammaRamp(D3DGAMMARAMP* pRamp)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetGammaRamp\n" );
|
|
m_pD3DDevice->GetGammaRamp( pRamp );
|
|
}
|
|
|
|
HRESULT __stdcall CreateTexture(UINT Width,UINT Height,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DTexture8** ppTexture)
|
|
{
|
|
FPRINTF( s_FileHandle, "CreateTexture\n" );
|
|
#if 0
|
|
HRESULT ret = m_pD3DDevice->CreateTexture( Width, Height, Levels, Usage, Format, Pool, ppTexture );
|
|
if( ret == D3D_OK )
|
|
{
|
|
*ppTexture = new CStubD3DTexture( *ppTexture, this );
|
|
return ret;
|
|
}
|
|
else
|
|
{
|
|
return ret;
|
|
}
|
|
#else
|
|
return m_pD3DDevice->CreateTexture( Width, Height, Levels, Usage, Format, Pool, ppTexture );
|
|
#endif
|
|
}
|
|
|
|
HRESULT __stdcall CreateVolumeTexture(UINT Width,UINT Height,UINT Depth,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DVolumeTexture8** ppVolumeTexture)
|
|
{
|
|
FPRINTF( s_FileHandle, "CreateVolumeTexture\n" );
|
|
return m_pD3DDevice->CreateVolumeTexture( Width, Height, Depth, Levels, Usage, Format, Pool, ppVolumeTexture );
|
|
}
|
|
|
|
HRESULT __stdcall CreateCubeTexture(UINT EdgeLength,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DCubeTexture8** ppCubeTexture)
|
|
{
|
|
FPRINTF( s_FileHandle, "CreateCubeTexture\n" );
|
|
return m_pD3DDevice->CreateCubeTexture( EdgeLength, Levels, Usage, Format, Pool, ppCubeTexture );
|
|
}
|
|
|
|
HRESULT __stdcall CreateVertexBuffer(UINT Length,DWORD Usage,DWORD FVF,D3DPOOL Pool,IDirect3DVertexBuffer8** ppVertexBuffer)
|
|
{
|
|
FPRINTF( s_FileHandle, "CreateVertexBuffer\n" );
|
|
return m_pD3DDevice->CreateVertexBuffer( Length, Usage, FVF, Pool, ppVertexBuffer );
|
|
}
|
|
|
|
HRESULT __stdcall CreateIndexBuffer(UINT Length,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,IDirect3DIndexBuffer8** ppIndexBuffer)
|
|
{
|
|
FPRINTF( s_FileHandle, "CreateIndexBuffer\n" );
|
|
return m_pD3DDevice->CreateIndexBuffer( Length, Usage, Format, Pool, ppIndexBuffer );
|
|
}
|
|
|
|
HRESULT __stdcall CreateRenderTarget(UINT Width,UINT Height,D3DFORMAT Format,D3DMULTISAMPLE_TYPE MultiSample,BOOL Lockable,IDirect3DSurface8** ppSurface)
|
|
{
|
|
FPRINTF( s_FileHandle, "CreateRenderTarget\n" );
|
|
return m_pD3DDevice->CreateRenderTarget( Width, Height, Format, MultiSample, Lockable, ppSurface );
|
|
}
|
|
|
|
HRESULT __stdcall CreateDepthStencilSurface(UINT Width,UINT Height,D3DFORMAT Format,D3DMULTISAMPLE_TYPE MultiSample,IDirect3DSurface8** ppSurface)
|
|
{
|
|
FPRINTF( s_FileHandle, "CreateDepthStencilSurface\n" );
|
|
return m_pD3DDevice->CreateDepthStencilSurface( Width, Height, Format, MultiSample, ppSurface );
|
|
}
|
|
|
|
HRESULT __stdcall CreateImageSurface(UINT Width,UINT Height,D3DFORMAT Format,IDirect3DSurface8** ppSurface)
|
|
{
|
|
FPRINTF( s_FileHandle, "CreateImageSurface\n" );
|
|
return m_pD3DDevice->CreateImageSurface( Width, Height, Format, ppSurface );
|
|
}
|
|
|
|
HRESULT __stdcall CopyRects(IDirect3DSurface8* pSourceSurface,CONST RECT* pSourceRectsArray,UINT cRects,IDirect3DSurface8* pDestinationSurface,CONST POINT* pDestPointsArray)
|
|
{
|
|
FPRINTF( s_FileHandle, "CopyRects\n" );
|
|
return m_pD3DDevice->CopyRects( pSourceSurface, pSourceRectsArray, cRects, pDestinationSurface, pDestPointsArray );
|
|
}
|
|
|
|
HRESULT __stdcall UpdateTexture(IDirect3DBaseTexture8* pSourceTexture,IDirect3DBaseTexture8* pDestinationTexture)
|
|
{
|
|
FPRINTF( s_FileHandle, "UpdateTexture\n" );
|
|
return m_pD3DDevice->UpdateTexture( pSourceTexture, pDestinationTexture );
|
|
}
|
|
|
|
HRESULT __stdcall GetFrontBuffer(IDirect3DSurface8* pDestSurface)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetFrontBuffer\n" );
|
|
return m_pD3DDevice->GetFrontBuffer( pDestSurface );
|
|
}
|
|
|
|
HRESULT __stdcall SetRenderTarget(IDirect3DSurface8* pRenderTarget,IDirect3DSurface8* pNewZStencil)
|
|
{
|
|
FPRINTF( s_FileHandle, "SetRenderTarget\n" );
|
|
return m_pD3DDevice->SetRenderTarget( pRenderTarget, pNewZStencil );
|
|
}
|
|
|
|
HRESULT __stdcall GetRenderTarget(IDirect3DSurface8** ppRenderTarget)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetRenderTarget\n" );
|
|
return m_pD3DDevice->GetRenderTarget( ppRenderTarget );
|
|
}
|
|
|
|
HRESULT __stdcall GetDepthStencilSurface(IDirect3DSurface8** ppZStencilSurface)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetDepthStencilSurface\n" );
|
|
return m_pD3DDevice->GetDepthStencilSurface( ppZStencilSurface );
|
|
}
|
|
|
|
HRESULT __stdcall BeginScene( void )
|
|
{
|
|
FPRINTF( s_FileHandle, "BeginScene\n" );
|
|
return m_pD3DDevice->BeginScene();
|
|
}
|
|
|
|
HRESULT __stdcall EndScene()
|
|
{
|
|
FPRINTF( s_FileHandle, "EndScene\n" );
|
|
return m_pD3DDevice->EndScene();
|
|
}
|
|
|
|
HRESULT __stdcall Clear(DWORD Count,CONST D3DRECT* pRects,DWORD Flags,D3DCOLOR Color,float Z,DWORD Stencil)
|
|
{
|
|
FPRINTF( s_FileHandle, "Clear\n" );
|
|
return m_pD3DDevice->Clear( Count, pRects, Flags, Color, Z, Stencil );
|
|
}
|
|
|
|
HRESULT __stdcall SetTransform(D3DTRANSFORMSTATETYPE State,CONST D3DMATRIX* pMatrix)
|
|
{
|
|
FPRINTF( s_FileHandle, "SetTransform\n" );
|
|
return m_pD3DDevice->SetTransform( State, pMatrix );
|
|
}
|
|
|
|
HRESULT __stdcall GetTransform(D3DTRANSFORMSTATETYPE State,D3DMATRIX* pMatrix)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetTransform\n" );
|
|
return m_pD3DDevice->GetTransform( State, pMatrix );
|
|
}
|
|
|
|
HRESULT __stdcall MultiplyTransform(D3DTRANSFORMSTATETYPE transformState,CONST D3DMATRIX* pMatrix)
|
|
{
|
|
FPRINTF( s_FileHandle, "MultiplyTransform\n" );
|
|
return m_pD3DDevice->MultiplyTransform( transformState, pMatrix );
|
|
}
|
|
|
|
HRESULT __stdcall SetViewport(CONST D3DVIEWPORT8* pViewport)
|
|
{
|
|
FPRINTF( s_FileHandle, "SetViewport\n" );
|
|
return m_pD3DDevice->SetViewport( pViewport );
|
|
}
|
|
|
|
HRESULT __stdcall GetViewport(D3DVIEWPORT8* pViewport)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetViewport\n" );
|
|
return m_pD3DDevice->GetViewport( pViewport );
|
|
}
|
|
|
|
HRESULT __stdcall SetMaterial(CONST D3DMATERIAL8* pMaterial)
|
|
{
|
|
FPRINTF( s_FileHandle, "SetMaterial\n" );
|
|
return m_pD3DDevice->SetMaterial( pMaterial );
|
|
}
|
|
|
|
HRESULT __stdcall GetMaterial(D3DMATERIAL8* pMaterial)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetMaterial\n" );
|
|
return m_pD3DDevice->GetMaterial( pMaterial );
|
|
}
|
|
|
|
HRESULT __stdcall SetLight(DWORD Index,CONST D3DLIGHT8* pLight)
|
|
{
|
|
FPRINTF( s_FileHandle, "SetLight\n" );
|
|
return m_pD3DDevice->SetLight( Index, pLight );
|
|
}
|
|
|
|
HRESULT __stdcall GetLight(DWORD Index,D3DLIGHT8* pLight)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetLight\n" );
|
|
return m_pD3DDevice->GetLight( Index, pLight );
|
|
}
|
|
|
|
HRESULT __stdcall LightEnable(DWORD Index,BOOL Enable)
|
|
{
|
|
FPRINTF( s_FileHandle, "LightEnable\n" );
|
|
return m_pD3DDevice->LightEnable( Index, Enable );
|
|
}
|
|
|
|
HRESULT __stdcall GetLightEnable(DWORD Index,BOOL* pEnable)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetLightEnable\n" );
|
|
return m_pD3DDevice->GetLightEnable( Index, pEnable );
|
|
}
|
|
|
|
HRESULT __stdcall SetClipPlane(DWORD Index,CONST float* pPlane)
|
|
{
|
|
FPRINTF( s_FileHandle, "SetClipPlane\n" );
|
|
return m_pD3DDevice->SetClipPlane( Index, pPlane );
|
|
}
|
|
|
|
HRESULT __stdcall GetClipPlane(DWORD Index,float* pPlane)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetClipPlane\n" );
|
|
return m_pD3DDevice->GetClipPlane( Index, pPlane );
|
|
}
|
|
|
|
HRESULT __stdcall SetRenderState(D3DRENDERSTATETYPE State,DWORD Value)
|
|
{
|
|
FPRINTF( s_FileHandle, "SetRenderState\n" );
|
|
return m_pD3DDevice->SetRenderState( State, Value );
|
|
}
|
|
|
|
HRESULT __stdcall GetRenderState(D3DRENDERSTATETYPE State,DWORD* pValue)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetRenderState\n" );
|
|
return m_pD3DDevice->GetRenderState( State, pValue );
|
|
}
|
|
|
|
HRESULT __stdcall BeginStateBlock(void)
|
|
{
|
|
FPRINTF( s_FileHandle, "BeginStateBlock\n" );
|
|
return m_pD3DDevice->BeginStateBlock();
|
|
}
|
|
|
|
HRESULT __stdcall EndStateBlock(DWORD* pToken)
|
|
{
|
|
FPRINTF( s_FileHandle, "EndStateBlock\n" );
|
|
return m_pD3DDevice->EndStateBlock( pToken );
|
|
}
|
|
|
|
HRESULT __stdcall ApplyStateBlock(DWORD Token)
|
|
{
|
|
FPRINTF( s_FileHandle, "ApplyStateBlock\n" );
|
|
return m_pD3DDevice->ApplyStateBlock( Token );
|
|
}
|
|
|
|
HRESULT __stdcall CaptureStateBlock(DWORD Token)
|
|
{
|
|
FPRINTF( s_FileHandle, "CaptureStateBlock\n" );
|
|
return m_pD3DDevice->CaptureStateBlock( Token );
|
|
}
|
|
|
|
HRESULT __stdcall DeleteStateBlock(DWORD Token)
|
|
{
|
|
FPRINTF( s_FileHandle, "DeleteStateBlock\n" );
|
|
return m_pD3DDevice->DeleteStateBlock( Token );
|
|
}
|
|
|
|
HRESULT __stdcall CreateStateBlock(D3DSTATEBLOCKTYPE Type,DWORD* pToken)
|
|
{
|
|
FPRINTF( s_FileHandle, "CreateStateBlock\n" );
|
|
return m_pD3DDevice->CreateStateBlock( Type, pToken );
|
|
}
|
|
|
|
HRESULT __stdcall SetClipStatus(CONST D3DCLIPSTATUS8* pClipStatus)
|
|
{
|
|
FPRINTF( s_FileHandle, "SetClipStatus\n" );
|
|
return m_pD3DDevice->SetClipStatus( pClipStatus );
|
|
}
|
|
|
|
HRESULT __stdcall GetClipStatus(D3DCLIPSTATUS8* pClipStatus)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetClipStatus\n" );
|
|
return m_pD3DDevice->GetClipStatus( pClipStatus );
|
|
}
|
|
|
|
HRESULT __stdcall GetTexture(DWORD Stage,IDirect3DBaseTexture8** ppTexture)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetTexture\n" );
|
|
return m_pD3DDevice->GetTexture( Stage, ppTexture );
|
|
}
|
|
|
|
HRESULT __stdcall SetTexture(DWORD Stage,IDirect3DBaseTexture8* pTexture)
|
|
{
|
|
FPRINTF( s_FileHandle, "SetTexture\n" );
|
|
return m_pD3DDevice->SetTexture( Stage, pTexture );
|
|
}
|
|
|
|
HRESULT __stdcall GetTextureStageState(DWORD Stage,D3DTEXTURESTAGESTATETYPE Type,DWORD* pValue)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetTextureStageState\n" );
|
|
return m_pD3DDevice->GetTextureStageState( Stage, Type, pValue );
|
|
}
|
|
|
|
HRESULT __stdcall SetTextureStageState(DWORD Stage,D3DTEXTURESTAGESTATETYPE Type,DWORD Value)
|
|
{
|
|
FPRINTF( s_FileHandle, "SetTextureStageState\n" );
|
|
return m_pD3DDevice->SetTextureStageState( Stage, Type, Value );
|
|
}
|
|
|
|
HRESULT __stdcall ValidateDevice(DWORD* pNumPasses)
|
|
{
|
|
FPRINTF( s_FileHandle, "ValidateDevice\n" );
|
|
#if 0
|
|
return m_pD3DDevice->ValidateDevice( pNumPasses );
|
|
#else
|
|
return D3D_OK;
|
|
#endif
|
|
}
|
|
|
|
HRESULT __stdcall GetInfo(DWORD DevInfoID,void* pDevInfoStruct,DWORD DevInfoStructSize)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetInfo\n" );
|
|
return m_pD3DDevice->GetInfo( DevInfoID, pDevInfoStruct, DevInfoStructSize );
|
|
}
|
|
|
|
HRESULT __stdcall SetPaletteEntries(UINT PaletteNumber,CONST PALETTEENTRY* pEntries)
|
|
{
|
|
FPRINTF( s_FileHandle, "SetPaletteEntries\n" );
|
|
return m_pD3DDevice->SetPaletteEntries( PaletteNumber, pEntries );
|
|
}
|
|
|
|
HRESULT __stdcall GetPaletteEntries(UINT PaletteNumber,PALETTEENTRY* pEntries)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetPaletteEntries\n" );
|
|
return m_pD3DDevice->GetPaletteEntries( PaletteNumber, pEntries );
|
|
}
|
|
|
|
HRESULT __stdcall SetCurrentTexturePalette(UINT PaletteNumber)
|
|
{
|
|
FPRINTF( s_FileHandle, "SetCurrentTexturePalette\n" );
|
|
return m_pD3DDevice->SetCurrentTexturePalette( PaletteNumber );
|
|
}
|
|
|
|
HRESULT __stdcall GetCurrentTexturePalette(UINT *PaletteNumber)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetCurrentTexturePalette\n" );
|
|
return m_pD3DDevice->GetCurrentTexturePalette( PaletteNumber );
|
|
}
|
|
|
|
HRESULT __stdcall DrawPrimitive(D3DPRIMITIVETYPE PrimitiveType,UINT StartVertex,UINT PrimitiveCount)
|
|
{
|
|
FPRINTF( s_FileHandle, "DrawPrimitive\n" );
|
|
return m_pD3DDevice->DrawPrimitive( PrimitiveType, StartVertex, PrimitiveCount );
|
|
}
|
|
|
|
HRESULT __stdcall DrawIndexedPrimitive(D3DPRIMITIVETYPE primitiveType,UINT minIndex,UINT NumVertices,UINT startIndex,UINT primCount)
|
|
{
|
|
FPRINTF( s_FileHandle, "DrawIndexedPrimitive\n" );
|
|
return m_pD3DDevice->DrawIndexedPrimitive( primitiveType,minIndex,NumVertices,startIndex,primCount );
|
|
}
|
|
|
|
HRESULT __stdcall DrawPrimitiveUP(D3DPRIMITIVETYPE PrimitiveType,UINT PrimitiveCount,CONST void* pVertexStreamZeroData,UINT VertexStreamZeroStride)
|
|
{
|
|
FPRINTF( s_FileHandle, "DrawPrimitiveUP\n" );
|
|
return m_pD3DDevice->DrawPrimitiveUP( PrimitiveType, PrimitiveCount, pVertexStreamZeroData, VertexStreamZeroStride );
|
|
}
|
|
|
|
HRESULT __stdcall DrawIndexedPrimitiveUP(D3DPRIMITIVETYPE PrimitiveType,UINT MinVertexIndex,UINT NumVertexIndices,UINT PrimitiveCount,CONST void* pIndexData,D3DFORMAT IndexDataFormat,CONST void* pVertexStreamZeroData,UINT VertexStreamZeroStride)
|
|
{
|
|
FPRINTF( s_FileHandle, "DrawIndexedPrimitiveUP\n" );
|
|
return m_pD3DDevice->DrawIndexedPrimitiveUP( PrimitiveType, MinVertexIndex, NumVertexIndices, PrimitiveCount, pIndexData, IndexDataFormat,pVertexStreamZeroData, VertexStreamZeroStride );
|
|
}
|
|
|
|
HRESULT __stdcall ProcessVertices(UINT SrcStartIndex,UINT DestIndex,UINT VertexCount,IDirect3DVertexBuffer8* pDestBuffer,DWORD Flags)
|
|
{
|
|
FPRINTF( s_FileHandle, "ProcessVertices\n" );
|
|
return m_pD3DDevice->ProcessVertices( SrcStartIndex, DestIndex, VertexCount, pDestBuffer, Flags );
|
|
}
|
|
|
|
HRESULT __stdcall CreateVertexShader(CONST DWORD* pDeclaration,CONST DWORD* pFunction,DWORD* pHandle,DWORD Usage)
|
|
{
|
|
FPRINTF( s_FileHandle, "CreateVertexShader\n" );
|
|
return m_pD3DDevice->CreateVertexShader( pDeclaration, pFunction, pHandle, Usage );
|
|
}
|
|
|
|
HRESULT __stdcall SetVertexShader(DWORD Handle)
|
|
{
|
|
FPRINTF( s_FileHandle, "SetVertexShader\n" );
|
|
return m_pD3DDevice->SetVertexShader( Handle );
|
|
}
|
|
|
|
HRESULT __stdcall GetVertexShader(DWORD* pHandle)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetVertexShader\n" );
|
|
return m_pD3DDevice->GetVertexShader( pHandle );
|
|
}
|
|
|
|
HRESULT __stdcall DeleteVertexShader(DWORD Handle)
|
|
{
|
|
FPRINTF( s_FileHandle, "DeleteVertexShader\n" );
|
|
return m_pD3DDevice->DeleteVertexShader( Handle );
|
|
}
|
|
|
|
HRESULT __stdcall SetVertexShaderConstant(DWORD Register,CONST void* pConstantData,DWORD ConstantCount)
|
|
{
|
|
FPRINTF( s_FileHandle, "SetVertexShaderConstant\n" );
|
|
return m_pD3DDevice->SetVertexShaderConstant( Register, pConstantData, ConstantCount );
|
|
}
|
|
|
|
HRESULT __stdcall GetVertexShaderConstant(DWORD Register,void* pConstantData,DWORD ConstantCount)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetVertexShaderConstant\n" );
|
|
return m_pD3DDevice->GetVertexShaderConstant( Register, pConstantData, ConstantCount );
|
|
}
|
|
|
|
HRESULT __stdcall GetVertexShaderDeclaration(DWORD Handle,void* pData,DWORD* pSizeOfData)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetVertexShaderDeclaration\n" );
|
|
return m_pD3DDevice->GetVertexShaderDeclaration( Handle, pData, pSizeOfData );
|
|
}
|
|
|
|
HRESULT __stdcall GetVertexShaderFunction(DWORD Handle,void* pData,DWORD* pSizeOfData)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetVertexShaderFunction\n" );
|
|
return m_pD3DDevice->GetVertexShaderFunction( Handle, pData, pSizeOfData );
|
|
}
|
|
|
|
HRESULT __stdcall SetStreamSource(UINT StreamNumber,IDirect3DVertexBuffer8* pStreamData,UINT Stride)
|
|
{
|
|
FPRINTF( s_FileHandle, "SetStreamSource\n" );
|
|
return m_pD3DDevice->SetStreamSource( StreamNumber, pStreamData, Stride );
|
|
}
|
|
|
|
HRESULT __stdcall GetStreamSource(UINT StreamNumber,IDirect3DVertexBuffer8** ppStreamData,UINT* pStride)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetStreamSource\n" );
|
|
return m_pD3DDevice->GetStreamSource( StreamNumber, ppStreamData, pStride );
|
|
}
|
|
|
|
HRESULT __stdcall SetIndices(IDirect3DIndexBuffer8* pIndexData,UINT BaseVertexIndex)
|
|
{
|
|
FPRINTF( s_FileHandle, "SetIndices\n" );
|
|
return m_pD3DDevice->SetIndices( pIndexData, BaseVertexIndex );
|
|
}
|
|
|
|
HRESULT __stdcall GetIndices(IDirect3DIndexBuffer8** ppIndexData,UINT* pBaseVertexIndex)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetIndices\n" );
|
|
return m_pD3DDevice->GetIndices( ppIndexData, pBaseVertexIndex );
|
|
}
|
|
|
|
HRESULT __stdcall CreatePixelShader(CONST DWORD* pFunction,DWORD* pHandle)
|
|
{
|
|
FPRINTF( s_FileHandle, "CreatePixelShader\n" );
|
|
return m_pD3DDevice->CreatePixelShader( pFunction, pHandle );
|
|
}
|
|
|
|
HRESULT __stdcall SetPixelShader(DWORD Handle)
|
|
{
|
|
FPRINTF( s_FileHandle, "SetPixelShader\n" );
|
|
return m_pD3DDevice->SetPixelShader( Handle );
|
|
}
|
|
|
|
HRESULT __stdcall GetPixelShader(DWORD* pHandle)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetPixelShader\n" );
|
|
return m_pD3DDevice->GetPixelShader( pHandle );
|
|
}
|
|
|
|
HRESULT __stdcall DeletePixelShader(DWORD Handle)
|
|
{
|
|
FPRINTF( s_FileHandle, "DeletePixelShader\n" );
|
|
return m_pD3DDevice->DeletePixelShader( Handle );
|
|
}
|
|
|
|
HRESULT __stdcall SetPixelShaderConstant(DWORD Register,CONST void* pConstantData,DWORD ConstantCount)
|
|
{
|
|
FPRINTF( s_FileHandle, "SetPixelShaderConstant\n" );
|
|
return m_pD3DDevice->SetPixelShaderConstant( Register, pConstantData, ConstantCount );
|
|
}
|
|
|
|
HRESULT __stdcall GetPixelShaderConstant(DWORD Register,void* pConstantData,DWORD ConstantCount)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetPixelShaderConstant\n" );
|
|
return m_pD3DDevice->GetPixelShaderConstant( Register, pConstantData, ConstantCount );
|
|
}
|
|
|
|
HRESULT __stdcall GetPixelShaderFunction(DWORD Handle,void* pData,DWORD* pSizeOfData)
|
|
{
|
|
FPRINTF( s_FileHandle, "GetPixelShaderFunction\n" );
|
|
return m_pD3DDevice->GetPixelShaderFunction( Handle, pData, pSizeOfData );
|
|
}
|
|
|
|
HRESULT __stdcall DrawRectPatch(UINT Handle,CONST float* pNumSegs,CONST D3DRECTPATCH_INFO* pRectPatchInfo)
|
|
{
|
|
FPRINTF( s_FileHandle, "DrawRectPatch\n" );
|
|
return m_pD3DDevice->DrawRectPatch( Handle, pNumSegs, pRectPatchInfo );
|
|
}
|
|
|
|
HRESULT __stdcall DrawTriPatch(UINT Handle,CONST float* pNumSegs,CONST D3DTRIPATCH_INFO* pTriPatchInfo)
|
|
{
|
|
FPRINTF( s_FileHandle, "DrawTriPatch\n" );
|
|
return m_pD3DDevice->DrawTriPatch( Handle, pNumSegs, pTriPatchInfo );
|
|
}
|
|
|
|
HRESULT __stdcall DeletePatch(UINT Handle)
|
|
{
|
|
FPRINTF( s_FileHandle, "DeletePatch\n" );
|
|
return m_pD3DDevice->DeletePatch( Handle );
|
|
}
|
|
};
|
|
|
|
#endif // STUBD3D
|
|
|
|
#endif // STUBD3DDEVICE_H
|
|
|