mirror of
https://github.com/reactos/reactos.git
synced 2025-08-03 20:05:41 +00:00
* Added stubs for IDirect3DDevice9
* Moved IDirect3D9 specific helper functions from generic helpers to implementation file * Renamed a couple of internal D3D9 structs svn path=/trunk/; revision=33263
This commit is contained in:
parent
8cfcdea5fa
commit
9eb5b2b938
8 changed files with 1072 additions and 37 deletions
|
@ -18,6 +18,7 @@
|
|||
<file>d3d9_impl.c</file>
|
||||
<file>d3d9_create.c</file>
|
||||
<file>d3d9_caps.c</file>
|
||||
<file>d3d9_device.c</file>
|
||||
<file>adapter.c</file>
|
||||
<file>format.c</file>
|
||||
<file>d3d9.rc</file>
|
||||
|
|
|
@ -238,7 +238,7 @@ HRESULT CreateD3D9(OUT LPDIRECT3D9 *ppDirect3D9, UINT SDKVersion)
|
|||
|
||||
pDirect3D9->lpVtbl = &Direct3D9_Vtbl;
|
||||
pDirect3D9->dwProcessId = GetCurrentThreadId();
|
||||
pDirect3D9->dwRefCnt = 1;
|
||||
pDirect3D9->lRefCnt = 1;
|
||||
|
||||
pDirect3D9->SDKVersion = SDKVersion;
|
||||
|
||||
|
|
996
reactos/dll/directx/d3d9/d3d9_device.c
Normal file
996
reactos/dll/directx/d3d9/d3d9_device.c
Normal file
|
@ -0,0 +1,996 @@
|
|||
/*
|
||||
* COPYRIGHT: See COPYING in the top level directory
|
||||
* PROJECT: ReactOS ReactX
|
||||
* FILE: dll/directx/d3d9/d3d9_device.c
|
||||
* PURPOSE: d3d9.dll internal device methods
|
||||
* PROGRAMERS: Gregor Brunmar <gregor (dot) brunmar (at) home (dot) se>
|
||||
*/
|
||||
#include "d3d9_device.h"
|
||||
#include "d3d9_helpers.h"
|
||||
#include "debug.h"
|
||||
|
||||
#define LOCK_D3DDEVICE9() EnterCriticalSection(&This->CriticalSection);
|
||||
#define UNLOCK_D3DDEVICE9() LeaveCriticalSection(&This->CriticalSection);
|
||||
|
||||
/* Convert a IDirect3D9 pointer safely to the internal implementation struct */
|
||||
LPDIRECT3DDEVICE9_INT impl_from_IDirect3DDevice9(LPDIRECT3DDEVICE9 iface)
|
||||
{
|
||||
if (IsBadWritePtr(iface, sizeof(LPDIRECT3DDEVICE9_INT)))
|
||||
return NULL;
|
||||
|
||||
return (LPDIRECT3DDEVICE9_INT)((ULONG_PTR)iface - FIELD_OFFSET(DIRECT3DDEVICE9_INT, lpVtbl));
|
||||
}
|
||||
|
||||
/* IDirect3DDevice9: IUnknown implementation */
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_QueryInterface(LPDIRECT3DDEVICE9 iface, REFIID riid, void** ppvObject)
|
||||
{
|
||||
LPDIRECT3DDEVICE9_INT This = impl_from_IDirect3DDevice9(iface);
|
||||
|
||||
if (IsEqualGUID(riid, &IID_IUnknown) || IsEqualGUID(riid, &IID_IDirect3DDevice9))
|
||||
{
|
||||
IUnknown_AddRef(iface);
|
||||
*ppvObject = &This->lpVtbl;
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
*ppvObject = NULL;
|
||||
return E_NOINTERFACE;
|
||||
}
|
||||
|
||||
static ULONG WINAPI IDirect3DDevice9Impl_AddRef(LPDIRECT3DDEVICE9 iface)
|
||||
{
|
||||
LPDIRECT3DDEVICE9_INT This = impl_from_IDirect3DDevice9(iface);
|
||||
ULONG ref = InterlockedIncrement(&This->lRefCnt);
|
||||
|
||||
return ref;
|
||||
}
|
||||
|
||||
static ULONG WINAPI IDirect3DDevice9Impl_Release(LPDIRECT3DDEVICE9 iface)
|
||||
{
|
||||
LPDIRECT3DDEVICE9_INT This = impl_from_IDirect3DDevice9(iface);
|
||||
ULONG ref = InterlockedDecrement(&This->lRefCnt);
|
||||
|
||||
if (ref == 0)
|
||||
{
|
||||
EnterCriticalSection(&This->CriticalSection);
|
||||
/* TODO: Free resources here */
|
||||
LeaveCriticalSection(&This->CriticalSection);
|
||||
AlignedFree(This);
|
||||
}
|
||||
|
||||
return ref;
|
||||
}
|
||||
|
||||
/* IDirect3D9Device interface */
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_TestCooperativeLevel(LPDIRECT3DDEVICE9 iface)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static UINT WINAPI IDirect3DDevice9Impl_GetAvailableTextureMem(LPDIRECT3DDEVICE9 iface)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_EvictManagedResources(LPDIRECT3DDEVICE9 iface)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetDirect3D(LPDIRECT3DDEVICE9 iface, IDirect3D9** ppD3D9)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetDeviceCaps(LPDIRECT3DDEVICE9 iface, D3DCAPS9* pCaps)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetDisplayMode(LPDIRECT3DDEVICE9 iface, UINT iSwapChain, D3DDISPLAYMODE* pMode)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetCreationParameters(LPDIRECT3DDEVICE9 iface, D3DDEVICE_CREATION_PARAMETERS *pParameters)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetCursorProperties(LPDIRECT3DDEVICE9 iface, UINT XHotSpot, UINT YHotSpot, IDirect3DSurface9* pCursorBitmap)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static void WINAPI IDirect3DDevice9Impl_SetCursorPosition(LPDIRECT3DDEVICE9 iface, int X, int Y, DWORD Flags)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
}
|
||||
|
||||
static BOOL WINAPI IDirect3DDevice9Impl_ShowCursor(LPDIRECT3DDEVICE9 iface, BOOL bShow)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_CreateAdditionalSwapChain(LPDIRECT3DDEVICE9 iface, D3DPRESENT_PARAMETERS* pPresentationParameters, IDirect3DSwapChain9** pSwapChain)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetSwapChain(LPDIRECT3DDEVICE9 iface, UINT iSwapChain, IDirect3DSwapChain9** pSwapChain)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static UINT WINAPI IDirect3DDevice9Impl_GetNumberOfSwapChains(LPDIRECT3DDEVICE9 iface)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_Reset(LPDIRECT3DDEVICE9 iface, D3DPRESENT_PARAMETERS* pPresentationParameters)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_Present(LPDIRECT3DDEVICE9 iface, CONST RECT* pSourceRect, CONST RECT* pDestRect, HWND hDestWindowOverride, CONST RGNDATA* pDirtyRegion)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetBackBuffer(LPDIRECT3DDEVICE9 iface, UINT iSwapChain, UINT iBackBuffer, D3DBACKBUFFER_TYPE Type, IDirect3DSurface9** ppBackBuffer)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetRasterStatus(LPDIRECT3DDEVICE9 iface, UINT iSwapChain, D3DRASTER_STATUS* pRasterStatus)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetDialogBoxMode(LPDIRECT3DDEVICE9 iface, BOOL bEnableDialogs)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static void WINAPI IDirect3DDevice9Impl_SetGammaRamp(LPDIRECT3DDEVICE9 iface, UINT iSwapChain, DWORD Flags, CONST D3DGAMMARAMP* pRamp)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
}
|
||||
|
||||
static void WINAPI IDirect3DDevice9Impl_GetGammaRamp(LPDIRECT3DDEVICE9 iface, UINT iSwapChain, D3DGAMMARAMP* pRamp)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_CreateTexture(LPDIRECT3DDEVICE9 iface, UINT Width, UINT Height, UINT Levels, DWORD Usage, D3DFORMAT Format, D3DPOOL Pool, IDirect3DTexture9** ppTexture, HANDLE* pSharedHandle)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_CreateVolumeTexture(LPDIRECT3DDEVICE9 iface, UINT Width, UINT Height, UINT Depth, UINT Levels, DWORD Usage, D3DFORMAT Format, D3DPOOL Pool, IDirect3DVolumeTexture9** ppVolumeTexture, HANDLE* pSharedHandle)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_CreateCubeTexture(LPDIRECT3DDEVICE9 iface, UINT EdgeLength, UINT Levels, DWORD Usage, D3DFORMAT Format, D3DPOOL Pool, IDirect3DCubeTexture9** ppCubeTexture, HANDLE* pSharedHandle)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_CreateVertexBuffer(LPDIRECT3DDEVICE9 iface, UINT Length, DWORD Usage, DWORD FVF, D3DPOOL Pool, IDirect3DVertexBuffer9** ppVertexBuffer, HANDLE* pSharedHandle)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_CreateIndexBuffer(LPDIRECT3DDEVICE9 iface, UINT Length, DWORD Usage, D3DFORMAT Format, D3DPOOL Pool, IDirect3DIndexBuffer9** ppIndexBuffer, HANDLE* pSharedHandle)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_CreateRenderTarget(LPDIRECT3DDEVICE9 iface, UINT Width, UINT Height, D3DFORMAT Format, D3DMULTISAMPLE_TYPE MultiSample, DWORD MultisampleQuality, BOOL Lockable, IDirect3DSurface9** ppSurface, HANDLE* pSharedHandle)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_CreateDepthStencilSurface(LPDIRECT3DDEVICE9 iface, UINT Width, UINT Height, D3DFORMAT Format, D3DMULTISAMPLE_TYPE MultiSample, DWORD MultisampleQuality, BOOL Discard, IDirect3DSurface9** ppSurface, HANDLE* pSharedHandle)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_UpdateSurface(LPDIRECT3DDEVICE9 iface, IDirect3DSurface9* pSourceSurface, CONST RECT* pSourceRect, IDirect3DSurface9* pDestinationSurface, CONST POINT* pDestPoint)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_UpdateTexture(LPDIRECT3DDEVICE9 iface, IDirect3DBaseTexture9* pSourceTexture, IDirect3DBaseTexture9* pDestinationTexture)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetRenderTargetData(LPDIRECT3DDEVICE9 iface, IDirect3DSurface9* pRenderTarget, IDirect3DSurface9* pDestSurface)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetFrontBufferData(LPDIRECT3DDEVICE9 iface, UINT iSwapChain, IDirect3DSurface9* pDestSurface)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_StretchRect(LPDIRECT3DDEVICE9 iface, IDirect3DSurface9* pSourceSurface, CONST RECT* pSourceRect, IDirect3DSurface9* pDestSurface, CONST RECT* pDestRect, D3DTEXTUREFILTERTYPE Filter)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_ColorFill(LPDIRECT3DDEVICE9 iface, IDirect3DSurface9* pSurface, CONST RECT* pRect, D3DCOLOR color)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_CreateOffscreenPlainSurface(LPDIRECT3DDEVICE9 iface, UINT Width, UINT Height, D3DFORMAT Format, D3DPOOL Pool, IDirect3DSurface9** ppSurface, HANDLE* pSharedHandle)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetRenderTarget(LPDIRECT3DDEVICE9 iface, DWORD RenderTargetIndex, IDirect3DSurface9* pRenderTarget)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetRenderTarget(LPDIRECT3DDEVICE9 iface, DWORD RenderTargetIndex,IDirect3DSurface9** ppRenderTarget)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetDepthStencilSurface(LPDIRECT3DDEVICE9 iface, IDirect3DSurface9* pNewZStencil)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetDepthStencilSurface(LPDIRECT3DDEVICE9 iface, IDirect3DSurface9** ppZStencilSurface)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_BeginScene(LPDIRECT3DDEVICE9 iface)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_EndScene(LPDIRECT3DDEVICE9 iface)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_Clear(LPDIRECT3DDEVICE9 iface, DWORD Count, CONST D3DRECT* pRects, DWORD Flags, D3DCOLOR Color, float Z, DWORD Stencil)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetTransform(LPDIRECT3DDEVICE9 iface, D3DTRANSFORMSTATETYPE State, CONST D3DMATRIX* pMatrix)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetTransform(LPDIRECT3DDEVICE9 iface, D3DTRANSFORMSTATETYPE State, D3DMATRIX* pMatrix)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_MultiplyTransform(LPDIRECT3DDEVICE9 iface, D3DTRANSFORMSTATETYPE State, CONST D3DMATRIX* pMatrix)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetViewport(LPDIRECT3DDEVICE9 iface, CONST D3DVIEWPORT9* pViewport)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetViewport(LPDIRECT3DDEVICE9 iface, D3DVIEWPORT9* pViewport)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetMaterial(LPDIRECT3DDEVICE9 iface, CONST D3DMATERIAL9* pMaterial)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetMaterial(LPDIRECT3DDEVICE9 iface, D3DMATERIAL9* pMaterial)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetLight(LPDIRECT3DDEVICE9 iface, DWORD Index, CONST D3DLIGHT9* pLight)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetLight(LPDIRECT3DDEVICE9 iface, DWORD Index, D3DLIGHT9* pLight)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_LightEnable(LPDIRECT3DDEVICE9 iface, DWORD Index, BOOL Enable)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetLightEnable(LPDIRECT3DDEVICE9 iface, DWORD Index, BOOL* pEnable)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetClipPlane(LPDIRECT3DDEVICE9 iface, DWORD Index, CONST float* pPlane)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetClipPlane(LPDIRECT3DDEVICE9 iface, DWORD Index, float* pPlane)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetRenderState(LPDIRECT3DDEVICE9 iface, D3DRENDERSTATETYPE State, DWORD Value)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetRenderState(LPDIRECT3DDEVICE9 iface, D3DRENDERSTATETYPE State, DWORD* pValue)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_CreateStateBlock(LPDIRECT3DDEVICE9 iface, D3DSTATEBLOCKTYPE Type, IDirect3DStateBlock9** ppSB)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_BeginStateBlock(LPDIRECT3DDEVICE9 iface)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_EndStateBlock(LPDIRECT3DDEVICE9 iface, IDirect3DStateBlock9** ppSB)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetClipStatus(LPDIRECT3DDEVICE9 iface, CONST D3DCLIPSTATUS9* pClipStatus)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetClipStatus(LPDIRECT3DDEVICE9 iface, D3DCLIPSTATUS9* pClipStatus)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetTexture(LPDIRECT3DDEVICE9 iface, DWORD Stage, IDirect3DBaseTexture9** ppTexture)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetTexture(LPDIRECT3DDEVICE9 iface, DWORD Stage, IDirect3DBaseTexture9* pTexture)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetTextureStageState(LPDIRECT3DDEVICE9 iface, DWORD Stage, D3DTEXTURESTAGESTATETYPE Type, DWORD* pValue)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetTextureStageState(LPDIRECT3DDEVICE9 iface, DWORD Stage, D3DTEXTURESTAGESTATETYPE Type, DWORD Value)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetSamplerState(LPDIRECT3DDEVICE9 iface, DWORD Sampler, D3DSAMPLERSTATETYPE Type, DWORD* pValue)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetSamplerState(LPDIRECT3DDEVICE9 iface, DWORD Sampler, D3DSAMPLERSTATETYPE Type, DWORD Value)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_ValidateDevice(LPDIRECT3DDEVICE9 iface, DWORD* pNumPasses)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetPaletteEntries(LPDIRECT3DDEVICE9 iface, UINT PaletteNumber, CONST PALETTEENTRY* pEntries)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetPaletteEntries(LPDIRECT3DDEVICE9 iface, UINT PaletteNumber, PALETTEENTRY* pEntries)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetCurrentTexturePalette(LPDIRECT3DDEVICE9 iface, UINT PaletteNumber)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetCurrentTexturePalette(LPDIRECT3DDEVICE9 iface, UINT* pPaletteNumber)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetScissorRect(LPDIRECT3DDEVICE9 iface, CONST RECT* pRect)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetScissorRect(LPDIRECT3DDEVICE9 iface, RECT* pRect)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetSoftwareVertexProcessing(LPDIRECT3DDEVICE9 iface, BOOL bSoftware)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static BOOL WINAPI IDirect3DDevice9Impl_GetSoftwareVertexProcessing(LPDIRECT3DDEVICE9 iface)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetNPatchMode(LPDIRECT3DDEVICE9 iface, float nSegments)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static float WINAPI IDirect3DDevice9Impl_GetNPatchMode(LPDIRECT3DDEVICE9 iface)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return 0.0f;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_DrawPrimitive(LPDIRECT3DDEVICE9 iface, D3DPRIMITIVETYPE PrimitiveType, UINT StartVertex, UINT PrimitiveCount)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_DrawIndexedPrimitive(LPDIRECT3DDEVICE9 iface, D3DPRIMITIVETYPE PrimitiveType, INT BaseVertexIndex, UINT MinVertexIndex, UINT NumVertices, UINT startIndex, UINT primCount)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_DrawPrimitiveUP(LPDIRECT3DDEVICE9 iface, D3DPRIMITIVETYPE PrimitiveType, UINT PrimitiveCount, CONST void* pVertexStreamZeroData, UINT VertexStreamZeroStride)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_DrawIndexedPrimitiveUP(LPDIRECT3DDEVICE9 iface, D3DPRIMITIVETYPE PrimitiveType, UINT MinVertexIndex, UINT NumVertices, UINT PrimitiveCount, CONST void* pIndexData, D3DFORMAT IndexDataFormat, CONST void* pVertexStreamZeroData, UINT VertexStreamZeroStride)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_ProcessVertices(LPDIRECT3DDEVICE9 iface, UINT SrcStartIndex, UINT DestIndex, UINT VertexCount, IDirect3DVertexBuffer9* pDestBuffer, IDirect3DVertexDeclaration9* pVertexDecl, DWORD Flags)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_CreateVertexDeclaration(LPDIRECT3DDEVICE9 iface, CONST D3DVERTEXELEMENT9* pVertexElements, IDirect3DVertexDeclaration9** ppDecl)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetVertexDeclaration(LPDIRECT3DDEVICE9 iface, IDirect3DVertexDeclaration9* pDecl)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetVertexDeclaration(LPDIRECT3DDEVICE9 iface, IDirect3DVertexDeclaration9** ppDecl)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetFVF(LPDIRECT3DDEVICE9 iface, DWORD FVF)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetFVF(LPDIRECT3DDEVICE9 iface, DWORD* pFVF)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_CreateVertexShader(LPDIRECT3DDEVICE9 iface, CONST DWORD* pFunction, IDirect3DVertexShader9** ppShader)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetVertexShader(LPDIRECT3DDEVICE9 iface, IDirect3DVertexShader9* pShader)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetVertexShader(LPDIRECT3DDEVICE9 iface, IDirect3DVertexShader9** ppShader)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetVertexShaderConstantF(LPDIRECT3DDEVICE9 iface, UINT StartRegister, CONST float* pConstantData, UINT Vector4fCount)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetVertexShaderConstantF(LPDIRECT3DDEVICE9 iface, UINT StartRegister, float* pConstantData, UINT Vector4fCount)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetVertexShaderConstantI(LPDIRECT3DDEVICE9 iface, UINT StartRegister, CONST int* pConstantData, UINT Vector4iCount)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetVertexShaderConstantI(LPDIRECT3DDEVICE9 iface, UINT StartRegister, int* pConstantData, UINT Vector4iCount)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetVertexShaderConstantB(LPDIRECT3DDEVICE9 iface, UINT StartRegister, CONST BOOL* pConstantData, UINT BoolCount)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetVertexShaderConstantB(LPDIRECT3DDEVICE9 iface, UINT StartRegister, BOOL* pConstantData, UINT BoolCount)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetStreamSource(LPDIRECT3DDEVICE9 iface, UINT StreamNumber, IDirect3DVertexBuffer9* pStreamData, UINT OffsetInBytes, UINT Stride)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetStreamSource(LPDIRECT3DDEVICE9 iface, UINT StreamNumber, IDirect3DVertexBuffer9** ppStreamData, UINT* pOffsetInBytes, UINT* pStride)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetStreamSourceFreq(LPDIRECT3DDEVICE9 iface, UINT StreamNumber,UINT Setting)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetStreamSourceFreq(LPDIRECT3DDEVICE9 iface, UINT StreamNumber, UINT* pSetting)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetIndices(LPDIRECT3DDEVICE9 iface, IDirect3DIndexBuffer9* pIndexData)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetIndices(LPDIRECT3DDEVICE9 iface, IDirect3DIndexBuffer9** ppIndexData)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_CreatePixelShader(LPDIRECT3DDEVICE9 iface, CONST DWORD* pFunction, IDirect3DPixelShader9** ppShader)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetPixelShader(LPDIRECT3DDEVICE9 iface, IDirect3DPixelShader9* pShader)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetPixelShader(LPDIRECT3DDEVICE9 iface, IDirect3DPixelShader9** ppShader)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetPixelShaderConstantF(LPDIRECT3DDEVICE9 iface, UINT StartRegister, CONST float* pConstantData, UINT Vector4fCount)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetPixelShaderConstantF(LPDIRECT3DDEVICE9 iface, UINT StartRegister, float* pConstantData, UINT Vector4fCount)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetPixelShaderConstantI(LPDIRECT3DDEVICE9 iface, UINT StartRegister, CONST int* pConstantData, UINT Vector4iCount)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetPixelShaderConstantI(LPDIRECT3DDEVICE9 iface, UINT StartRegister, int* pConstantData, UINT Vector4iCount)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_SetPixelShaderConstantB(LPDIRECT3DDEVICE9 iface, UINT StartRegister, CONST BOOL* pConstantData, UINT BoolCount)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_GetPixelShaderConstantB(LPDIRECT3DDEVICE9 iface, UINT StartRegister, BOOL* pConstantData, UINT BoolCount)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_DrawRectPatch(LPDIRECT3DDEVICE9 iface, UINT Handle, CONST float* pNumSegs, CONST D3DRECTPATCH_INFO* pRectPatchInfo)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_DrawTriPatch(LPDIRECT3DDEVICE9 iface, UINT Handle, CONST float* pNumSegs, CONST D3DTRIPATCH_INFO* pTriPatchInfo)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_DeletePatch(LPDIRECT3DDEVICE9 iface, UINT Handle)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI IDirect3DDevice9Impl_CreateQuery(LPDIRECT3DDEVICE9 iface, D3DQUERYTYPE Type, IDirect3DQuery9** ppQuery)
|
||||
{
|
||||
UNIMPLEMENTED
|
||||
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
IDirect3DDevice9Vtbl Direct3DDevice9_Vtbl =
|
||||
{
|
||||
/* IUnknown */
|
||||
IDirect3DDevice9Impl_QueryInterface,
|
||||
IDirect3DDevice9Impl_AddRef,
|
||||
IDirect3DDevice9Impl_Release,
|
||||
|
||||
/* IDirect3D9Device */
|
||||
IDirect3DDevice9Impl_TestCooperativeLevel,
|
||||
IDirect3DDevice9Impl_GetAvailableTextureMem,
|
||||
IDirect3DDevice9Impl_EvictManagedResources,
|
||||
IDirect3DDevice9Impl_GetDirect3D,
|
||||
IDirect3DDevice9Impl_GetDeviceCaps,
|
||||
IDirect3DDevice9Impl_GetDisplayMode,
|
||||
IDirect3DDevice9Impl_GetCreationParameters,
|
||||
IDirect3DDevice9Impl_SetCursorProperties,
|
||||
IDirect3DDevice9Impl_SetCursorPosition,
|
||||
IDirect3DDevice9Impl_ShowCursor,
|
||||
IDirect3DDevice9Impl_CreateAdditionalSwapChain,
|
||||
IDirect3DDevice9Impl_GetSwapChain,
|
||||
IDirect3DDevice9Impl_GetNumberOfSwapChains,
|
||||
IDirect3DDevice9Impl_Reset,
|
||||
IDirect3DDevice9Impl_Present,
|
||||
IDirect3DDevice9Impl_GetBackBuffer,
|
||||
IDirect3DDevice9Impl_GetRasterStatus,
|
||||
IDirect3DDevice9Impl_SetDialogBoxMode,
|
||||
IDirect3DDevice9Impl_SetGammaRamp,
|
||||
IDirect3DDevice9Impl_GetGammaRamp,
|
||||
IDirect3DDevice9Impl_CreateTexture,
|
||||
IDirect3DDevice9Impl_CreateVolumeTexture,
|
||||
IDirect3DDevice9Impl_CreateCubeTexture,
|
||||
IDirect3DDevice9Impl_CreateVertexBuffer,
|
||||
IDirect3DDevice9Impl_CreateIndexBuffer,
|
||||
IDirect3DDevice9Impl_CreateRenderTarget,
|
||||
IDirect3DDevice9Impl_CreateDepthStencilSurface,
|
||||
IDirect3DDevice9Impl_UpdateSurface,
|
||||
IDirect3DDevice9Impl_UpdateTexture,
|
||||
IDirect3DDevice9Impl_GetRenderTargetData,
|
||||
IDirect3DDevice9Impl_GetFrontBufferData,
|
||||
IDirect3DDevice9Impl_StretchRect,
|
||||
IDirect3DDevice9Impl_ColorFill,
|
||||
IDirect3DDevice9Impl_CreateOffscreenPlainSurface,
|
||||
IDirect3DDevice9Impl_SetRenderTarget,
|
||||
IDirect3DDevice9Impl_GetRenderTarget,
|
||||
IDirect3DDevice9Impl_SetDepthStencilSurface,
|
||||
IDirect3DDevice9Impl_GetDepthStencilSurface,
|
||||
IDirect3DDevice9Impl_BeginScene,
|
||||
IDirect3DDevice9Impl_EndScene,
|
||||
IDirect3DDevice9Impl_Clear,
|
||||
IDirect3DDevice9Impl_SetTransform,
|
||||
IDirect3DDevice9Impl_GetTransform,
|
||||
IDirect3DDevice9Impl_MultiplyTransform,
|
||||
IDirect3DDevice9Impl_SetViewport,
|
||||
IDirect3DDevice9Impl_GetViewport,
|
||||
IDirect3DDevice9Impl_SetMaterial,
|
||||
IDirect3DDevice9Impl_GetMaterial,
|
||||
IDirect3DDevice9Impl_SetLight,
|
||||
IDirect3DDevice9Impl_GetLight,
|
||||
IDirect3DDevice9Impl_LightEnable,
|
||||
IDirect3DDevice9Impl_GetLightEnable,
|
||||
IDirect3DDevice9Impl_SetClipPlane,
|
||||
IDirect3DDevice9Impl_GetClipPlane,
|
||||
IDirect3DDevice9Impl_SetRenderState,
|
||||
IDirect3DDevice9Impl_GetRenderState,
|
||||
IDirect3DDevice9Impl_CreateStateBlock,
|
||||
IDirect3DDevice9Impl_BeginStateBlock,
|
||||
IDirect3DDevice9Impl_EndStateBlock,
|
||||
IDirect3DDevice9Impl_SetClipStatus,
|
||||
IDirect3DDevice9Impl_GetClipStatus,
|
||||
IDirect3DDevice9Impl_GetTexture,
|
||||
IDirect3DDevice9Impl_SetTexture,
|
||||
IDirect3DDevice9Impl_GetTextureStageState,
|
||||
IDirect3DDevice9Impl_SetTextureStageState,
|
||||
IDirect3DDevice9Impl_GetSamplerState,
|
||||
IDirect3DDevice9Impl_SetSamplerState,
|
||||
IDirect3DDevice9Impl_ValidateDevice,
|
||||
IDirect3DDevice9Impl_SetPaletteEntries,
|
||||
IDirect3DDevice9Impl_GetPaletteEntries,
|
||||
IDirect3DDevice9Impl_SetCurrentTexturePalette,
|
||||
IDirect3DDevice9Impl_GetCurrentTexturePalette,
|
||||
IDirect3DDevice9Impl_SetScissorRect,
|
||||
IDirect3DDevice9Impl_GetScissorRect,
|
||||
IDirect3DDevice9Impl_SetSoftwareVertexProcessing,
|
||||
IDirect3DDevice9Impl_GetSoftwareVertexProcessing,
|
||||
IDirect3DDevice9Impl_SetNPatchMode,
|
||||
IDirect3DDevice9Impl_GetNPatchMode,
|
||||
IDirect3DDevice9Impl_DrawPrimitive,
|
||||
IDirect3DDevice9Impl_DrawIndexedPrimitive,
|
||||
IDirect3DDevice9Impl_DrawPrimitiveUP,
|
||||
IDirect3DDevice9Impl_DrawIndexedPrimitiveUP,
|
||||
IDirect3DDevice9Impl_ProcessVertices,
|
||||
IDirect3DDevice9Impl_CreateVertexDeclaration,
|
||||
IDirect3DDevice9Impl_SetVertexDeclaration,
|
||||
IDirect3DDevice9Impl_GetVertexDeclaration,
|
||||
IDirect3DDevice9Impl_SetFVF,
|
||||
IDirect3DDevice9Impl_GetFVF,
|
||||
IDirect3DDevice9Impl_CreateVertexShader,
|
||||
IDirect3DDevice9Impl_SetVertexShader,
|
||||
IDirect3DDevice9Impl_GetVertexShader,
|
||||
IDirect3DDevice9Impl_SetVertexShaderConstantF,
|
||||
IDirect3DDevice9Impl_GetVertexShaderConstantF,
|
||||
IDirect3DDevice9Impl_SetVertexShaderConstantI,
|
||||
IDirect3DDevice9Impl_GetVertexShaderConstantI,
|
||||
IDirect3DDevice9Impl_SetVertexShaderConstantB,
|
||||
IDirect3DDevice9Impl_GetVertexShaderConstantB,
|
||||
IDirect3DDevice9Impl_SetStreamSource,
|
||||
IDirect3DDevice9Impl_GetStreamSource,
|
||||
IDirect3DDevice9Impl_SetStreamSourceFreq,
|
||||
IDirect3DDevice9Impl_GetStreamSourceFreq,
|
||||
IDirect3DDevice9Impl_SetIndices,
|
||||
IDirect3DDevice9Impl_GetIndices,
|
||||
IDirect3DDevice9Impl_CreatePixelShader,
|
||||
IDirect3DDevice9Impl_SetPixelShader,
|
||||
IDirect3DDevice9Impl_GetPixelShader,
|
||||
IDirect3DDevice9Impl_SetPixelShaderConstantF,
|
||||
IDirect3DDevice9Impl_GetPixelShaderConstantF,
|
||||
IDirect3DDevice9Impl_SetPixelShaderConstantI,
|
||||
IDirect3DDevice9Impl_GetPixelShaderConstantI,
|
||||
IDirect3DDevice9Impl_SetPixelShaderConstantB,
|
||||
IDirect3DDevice9Impl_GetPixelShaderConstantB,
|
||||
IDirect3DDevice9Impl_DrawRectPatch,
|
||||
IDirect3DDevice9Impl_DrawTriPatch,
|
||||
IDirect3DDevice9Impl_DeletePatch,
|
||||
IDirect3DDevice9Impl_CreateQuery,
|
||||
};
|
||||
|
|
@ -34,7 +34,7 @@ typedef struct _tagD3D9BaseObject_
|
|||
typedef struct _tagD3D9BaseSurface_
|
||||
{
|
||||
/* 0x0000 */ LPDWORD lpVtbl;
|
||||
/* 0x0024 */ D3DFORMAT DisplayFormat2;
|
||||
/* 0x0024 */ D3DFORMAT DisplayFormat2; // Back buffer format?
|
||||
/* 0x0028 */ DWORD dwUnknown0028; // Constant/ref count? (1)
|
||||
/* 0x002c */ DWORD dwUnknown002c; // Refresh rate?
|
||||
/* 0x0030 */ D3DPOOL SurfacePool;
|
||||
|
@ -85,7 +85,26 @@ typedef struct _tagD3D9ResourceManager_
|
|||
/* 0x0014 - 0x0174 */ LPDWORD pFirstHeapTexture;
|
||||
} D3D9ResourceManager;
|
||||
|
||||
typedef struct _tagD3D9SwapChain_
|
||||
typedef struct _tagDirect3D9Cursor_
|
||||
{
|
||||
/* 0x0000 */ DWORD dwUnknown0000;
|
||||
/* 0x0004 */ DWORD dwUnknown0004;
|
||||
/* 0x0008 */ DWORD dwUnknown0008;
|
||||
/* 0x000c */ DWORD dwUnknown000c;
|
||||
/* 0x0010 */ DWORD dwUnknown0010;
|
||||
/* 0x0014 */ DWORD dwUnknown0014;
|
||||
/* 0x0018 */ DWORD dwWidth;
|
||||
/* 0x001c */ DWORD dwHeight;
|
||||
/* 0x0020 */ DWORD dwUnknown0020[18];
|
||||
/* 0x0070 */ struct _tagD3D9BaseDevice_* pBaseDevice;
|
||||
/* 0x0074 */ struct _tagD3D9SwapChain_* pSwapChain;
|
||||
/* 0x0078 */ DWORD dwUnknown0078;
|
||||
/* 0x007c */ DWORD dwMonitorVirtualX;
|
||||
/* 0x0080 */ DWORD dwMonitorVirtualY;
|
||||
/* 0x0084 */ DWORD dwUnknown0084;
|
||||
} D3D9Cursor;
|
||||
|
||||
typedef struct _tagDirect3DSwapChain9_INT_
|
||||
{
|
||||
/* 0x0000 */ D3D9BaseObject BaseObject;
|
||||
/* 0x0020 */ struct IDirect3DSwapChain9Vtbl* lpVtbl;
|
||||
|
@ -99,13 +118,33 @@ typedef struct _tagD3D9SwapChain_
|
|||
/* 0x0040 */ DWORD AdapterGroupIndex;
|
||||
/* 0x0044 */ D3DPRESENT_PARAMETERS PresentParameters;
|
||||
/* 0x007c */ DWORD dwUnknown007c;
|
||||
/* 0x0080 */ DWORD dwUnknown0080[2];
|
||||
/* 0x0088 */ LPDWORD dwUnknown0088;
|
||||
/* 0x0080 */ DWORD dwUnknown0080[2]; /* Extended format? */
|
||||
/* 0x0088 */ D3D9Cursor* pCursor;
|
||||
/* 0x008c */ DWORD dwUnknown008c[4];
|
||||
/* 0x009c */ D3D9_Unknown6BC* pUnknown6BC;
|
||||
/* 0x00a0 */ LPDWORD dwUnknown00a0;
|
||||
/* 0x00a4 */ DWORD dwUnknown00a4[46];
|
||||
/* 0x015c */ LPDWORD pUnknown0174;
|
||||
/* 0x00a4 */ DWORD dwUnknown00a4;
|
||||
/* 0x00a8 */ DWORD dwUnknown00a8;
|
||||
/* 0x00ac */ DWORD dwWidth;
|
||||
/* 0x00b0 */ DWORD dwHeight;
|
||||
/* 0x00b4 */ DWORD dwUnknown00b4;
|
||||
/* 0x00b8 */ DWORD dwUnknown00b8;
|
||||
/* 0x00bc */ DWORD dwUnknown00bc;
|
||||
/* 0x00c0 */ DWORD dwWidth2;
|
||||
/* 0x00c4 */ DWORD dwHeight2;
|
||||
/* 0x00c8 */ DWORD dwUnknown00c8;
|
||||
/* 0x00cc */ DWORD dwUnknown00cc;
|
||||
/* 0x00d0 */ DWORD dwUnknown00d0;
|
||||
/* 0x00d4 */ DWORD dwUnknown00d4;
|
||||
/* 0x00d8 */ DWORD dwUnknown00d8;
|
||||
/* 0x00dc */ DWORD dwUnknown00dc;
|
||||
/* 0x00e0 */ DWORD dwDevModeScale;
|
||||
/* 0x00e4 */ DWORD dwUnknown00e4;
|
||||
/* 0x00e8 */ DWORD dwUnknown00e8;
|
||||
/* 0x00ec */ DWORD dwUnknown00ec;
|
||||
/* 0x00f0 */ DWORD dwUnknown00f0[27];
|
||||
|
||||
/* 0x015c */ LPDWORD pUnknown0174; // points to 0x0174
|
||||
/* 0x0160 */ DWORD dwUnknown0160[4];
|
||||
/* 0x0170 */ HRESULT hResult;
|
||||
|
||||
|
@ -119,12 +158,12 @@ typedef struct _tagD3D9SwapChain_
|
|||
/* 0x01f8 */ DWORD dwUnknown01f8;
|
||||
/* 0x01fc */ DWORD dwUnknown01fc;
|
||||
/* 0x0200 */ DDGAMMARAMP GammaRamp;
|
||||
} D3D9SwapChain_INT;
|
||||
} Direct3DSwapChain9_INT, FAR* LPDIRECT3DSWAPCHAIN9_INT;
|
||||
|
||||
typedef struct _tagD3D9BaseDevice_
|
||||
typedef struct _tagDirect3DDevice9_INT_
|
||||
{
|
||||
/* 0x0000 */ struct IDirect3D9DeviceVtbl* lpVtbl;
|
||||
/* 0x0004 */ CRITICAL_SECTION d3d9device_cs;
|
||||
/* 0x0004 */ CRITICAL_SECTION CriticalSection;
|
||||
#ifdef D3D_DEBUG_INFO
|
||||
/* N/A - 0x001c */ DWORD dbg0004;
|
||||
/* N/A - 0x0020 */ DWORD dbg0008;
|
||||
|
@ -146,7 +185,7 @@ typedef struct _tagD3D9BaseDevice_
|
|||
/* 0x0024 - 0x005c */ struct _tagD3D9PUREDEVICE_* lpThis;
|
||||
/* 0x0028 - 0x0060 */ DWORD dwDXVersion;
|
||||
/* 0x002c - 0x0064 */ DWORD unknown000011;
|
||||
/* 0x0030 - 0x0068 */ DWORD dwRefCnt;
|
||||
/* 0x0030 - 0x0068 */ LONG lRefCnt;
|
||||
/* 0x0034 - 0x006c */ DWORD unknown000013;
|
||||
/* 0x0038 - 0x0070 */ D3D9ResourceManager* pResourceManager;
|
||||
/* 0x003c - 0x0074 */ HWND hWnd;
|
||||
|
@ -201,9 +240,9 @@ typedef struct _tagD3D9BaseDevice_
|
|||
/* 0x010c - 0x0144 */ DWORD unknown000067;
|
||||
/* 0x0110 - 0x0148 */ DWORD AdapterIndexInGroup[D3D9_INT_MAX_NUM_ADAPTERS];
|
||||
/* 0x0140 - 0x0178 */ D3D9_DEVICEDATA DeviceData[D3D9_INT_MAX_NUM_ADAPTERS];
|
||||
/* 0x1df0 */ D3D9SwapChain_INT* pSwapChains[D3D9_INT_MAX_NUM_ADAPTERS];
|
||||
/* 0x1e20 */ D3D9SwapChain_INT* pSwapChains2[D3D9_INT_MAX_NUM_ADAPTERS];
|
||||
/* 0x1e50 */ D3D9BaseSurface* pUnknown001940;
|
||||
/* 0x1df0 - 0x1e28 */ LPDIRECT3DSWAPCHAIN9_INT pSwapChains[D3D9_INT_MAX_NUM_ADAPTERS];
|
||||
/* 0x1e20 */ LPDIRECT3DSWAPCHAIN9_INT pSwapChains2[D3D9_INT_MAX_NUM_ADAPTERS];
|
||||
/* 0x1e50 */ D3D9BaseSurface* pRenderTargetList;
|
||||
/* 0x1e54 */ DWORD unknown001941;
|
||||
/* 0x1e58 */ DWORD unknown001942;
|
||||
/* 0x1e5c */ DWORD unknown001943;
|
||||
|
@ -265,11 +304,11 @@ typedef struct _tagD3D9BaseDevice_
|
|||
/* 0x1f3c */ DWORD unknown001999;
|
||||
/* 0x1f40 */ DWORD unknown002000;
|
||||
/* 0x1f44 */ DWORD unknown002001;
|
||||
} D3D9BaseDevice;
|
||||
} DIRECT3DDEVICE9_INT, FAR* LPDIRECT3DDEVICE9_INT;
|
||||
|
||||
typedef struct _tagD3D9PUREDEVICE_INT_
|
||||
typedef struct _tagD3D9PUREDEVICE_
|
||||
{
|
||||
/* 0x0000 - 0x0000 */ D3D9BaseDevice BaseDevice;
|
||||
/* 0x0000 - 0x0000 */ DIRECT3DDEVICE9_INT BaseDevice;
|
||||
/* 0x1f48 */ DWORD unknown002002;
|
||||
/* 0x1f4c */ DWORD unknown002003;
|
||||
/* 0x1f50 */ DWORD unknown002004;
|
||||
|
@ -586,11 +625,11 @@ typedef struct _tagD3D9PUREDEVICE_INT_
|
|||
/* 0x242c */ DWORD unknown002315;
|
||||
/* 0x2430 */ DWORD unknown002316;
|
||||
/* 0x2434 */ DWORD unknown002317;
|
||||
} D3D9PUREDEVICE_INT, FAR *LPD3D9PUREDEVICE_INT;
|
||||
} D3D9PUREDEVICE, FAR *LPD3D9PUREDEVICE;
|
||||
|
||||
typedef struct _tagD3D9HALDEVICE_INT_
|
||||
typedef struct _tagD3D9HALDEVICE_
|
||||
{
|
||||
/* 0x0000 */ D3D9PUREDEVICE_INT PureDevice;
|
||||
/* 0x0000 */ D3D9PUREDEVICE PureDevice;
|
||||
#ifdef D3D_DEBUG_INFO
|
||||
/* N/A - 0x0004 */ DWORD dbg0004;
|
||||
/* N/A - 0x0008 */ DWORD dbg0008;
|
||||
|
@ -1579,6 +1618,6 @@ typedef struct _tagD3D9HALDEVICE_INT_
|
|||
/* 0x3324 */ DWORD unknown003324;
|
||||
/* 0x3328 */ DWORD unknown003328;
|
||||
/* 0x332c */ DWORD unknown00332c;
|
||||
} D3D9HALDEVICE_INT, FAR *LPD3D9HALDEVICE_INT;
|
||||
} D3D9HALDEVICE, FAR *LPD3D9HALDEVICE;
|
||||
|
||||
#endif /* _D3D9_DEVICE_H_ */
|
||||
|
|
|
@ -16,14 +16,6 @@
|
|||
|
||||
static LPCSTR D3D9_DebugRegPath = "Software\\Microsoft\\Direct3D";
|
||||
|
||||
LPDIRECT3D9_INT impl_from_IDirect3D9(LPDIRECT3D9 iface)
|
||||
{
|
||||
if (IsBadWritePtr(iface, sizeof(LPDIRECT3D9_INT)))
|
||||
return NULL;
|
||||
|
||||
return (LPDIRECT3D9_INT)((ULONG_PTR)iface - FIELD_OFFSET(DIRECT3D9_INT, lpVtbl));
|
||||
}
|
||||
|
||||
BOOL ReadRegistryValue(IN DWORD ValueType, IN LPCSTR ValueName, OUT LPBYTE DataBuffer, IN OUT LPDWORD DataBufferSize)
|
||||
{
|
||||
HKEY hKey;
|
||||
|
|
|
@ -11,11 +11,6 @@
|
|||
#include "d3d9_common.h"
|
||||
#include "d3d9_private.h"
|
||||
|
||||
#define LOCK_D3D9() EnterCriticalSection(&This->d3d9_cs);
|
||||
#define UNLOCK_D3D9() LeaveCriticalSection(&This->d3d9_cs);
|
||||
|
||||
/* Convert a IDirect3D9 pointer safely to the internal implementation struct */
|
||||
LPDIRECT3D9_INT impl_from_IDirect3D9(LPDIRECT3D9 iface);
|
||||
|
||||
/* Reads a registry value if it's of the correct value type */
|
||||
BOOL ReadRegistryValue(IN DWORD ValueType, IN LPCSTR ValueName, OUT LPBYTE DataBuffer, IN OUT LPDWORD DataBufferSize);
|
||||
|
|
|
@ -13,6 +13,18 @@
|
|||
#include "adapter.h"
|
||||
#include "format.h"
|
||||
|
||||
#define LOCK_D3D9() EnterCriticalSection(&This->d3d9_cs);
|
||||
#define UNLOCK_D3D9() LeaveCriticalSection(&This->d3d9_cs);
|
||||
|
||||
/* Convert a IDirect3D9 pointer safely to the internal implementation struct */
|
||||
static LPDIRECT3D9_INT impl_from_IDirect3D9(LPDIRECT3D9 iface)
|
||||
{
|
||||
if (IsBadWritePtr(iface, sizeof(LPDIRECT3D9_INT)))
|
||||
return NULL;
|
||||
|
||||
return (LPDIRECT3D9_INT)((ULONG_PTR)iface - FIELD_OFFSET(DIRECT3D9_INT, lpVtbl));
|
||||
}
|
||||
|
||||
/* IDirect3D9: IUnknown implementation */
|
||||
static HRESULT WINAPI IDirect3D9Impl_QueryInterface(LPDIRECT3D9 iface, REFIID riid, LPVOID* ppvObject)
|
||||
{
|
||||
|
@ -32,7 +44,7 @@ static HRESULT WINAPI IDirect3D9Impl_QueryInterface(LPDIRECT3D9 iface, REFIID ri
|
|||
static ULONG WINAPI IDirect3D9Impl_AddRef(LPDIRECT3D9 iface)
|
||||
{
|
||||
LPDIRECT3D9_INT This = impl_from_IDirect3D9(iface);
|
||||
ULONG ref = InterlockedIncrement(&This->dwRefCnt);
|
||||
ULONG ref = InterlockedIncrement(&This->lRefCnt);
|
||||
|
||||
return ref;
|
||||
}
|
||||
|
@ -40,7 +52,7 @@ static ULONG WINAPI IDirect3D9Impl_AddRef(LPDIRECT3D9 iface)
|
|||
static ULONG WINAPI IDirect3D9Impl_Release(LPDIRECT3D9 iface)
|
||||
{
|
||||
LPDIRECT3D9_INT This = impl_from_IDirect3D9(iface);
|
||||
ULONG ref = InterlockedDecrement(&This->dwRefCnt);
|
||||
ULONG ref = InterlockedDecrement(&This->lRefCnt);
|
||||
|
||||
if (ref == 0)
|
||||
{
|
||||
|
|
|
@ -170,7 +170,7 @@ typedef struct _tagDIRECT3D9_INT_
|
|||
/* 0x001c */ DWORD unknown000007; /* 0x00000001 */
|
||||
/* 0x0020 */ DWORD dwProcessId;
|
||||
/* 0x0024 */ struct _tagDIRECT3D9_INT_ *lpInt;
|
||||
/* 0x0028 */ LONG dwRefCnt; /* Increases and decreases by AddRef() and Release() */
|
||||
/* 0x0028 */ LONG lRefCnt; /* Increases and decreases by AddRef() and Release() */
|
||||
/* 0x002c */ UINT NumDisplayAdapters;
|
||||
/* 0x0030 */ Direct3D9DisplayAdapterInfo DisplayAdapters[D3D9_INT_MAX_NUM_ADAPTERS];
|
||||
/* 0x2100 */ DWORD unknown002112;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue