2 * IDirect3DDevice9 implementation
4 * Copyright 2002-2003 Jason Edmeades
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version.
12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with this library; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
23 #include "d3d9_private.h"
25 /** currently desactiving 1_4 support as mesa doesn't implement all 1_4 support while defining it */
28 WINE_DEFAULT_DEBUG_CHANNEL(d3d
);
29 WINE_DECLARE_DEBUG_CHANNEL(d3d_shader
);
32 /* IDirect3D IUnknown parts follow: */
33 HRESULT WINAPI
IDirect3DDevice9Impl_QueryInterface(LPDIRECT3DDEVICE9 iface
, REFIID riid
, LPVOID
* ppobj
) {
34 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
36 if (IsEqualGUID(riid
, &IID_IUnknown
)
37 || IsEqualGUID(riid
, &IID_IDirect3DDevice9
)) {
38 IDirect3DDevice9Impl_AddRef(iface
);
43 WARN("(%p)->(%s,%p),not found\n", This
, debugstr_guid(riid
), ppobj
);
47 ULONG WINAPI
IDirect3DDevice9Impl_AddRef(LPDIRECT3DDEVICE9 iface
) {
48 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
49 ULONG ref
= InterlockedIncrement(&This
->ref
);
51 TRACE("(%p) : AddRef from %ld\n", This
, ref
- 1);
56 ULONG WINAPI
IDirect3DDevice9Impl_Release(LPDIRECT3DDEVICE9 iface
) {
57 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
58 ULONG ref
= InterlockedDecrement(&This
->ref
);
60 TRACE("(%p) : ReleaseRef to %ld\n", This
, ref
);
63 IDirect3D9_Release((LPDIRECT3D9
) This
->direct3d
);
64 IWineD3DDevice_Release(This
->WineD3DDevice
);
65 HeapFree(GetProcessHeap(), 0, This
);
70 /* IDirect3DDevice Interface follow: */
71 HRESULT WINAPI
IDirect3DDevice9Impl_TestCooperativeLevel(LPDIRECT3DDEVICE9 iface
) {
72 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
73 TRACE("(%p) : stub\n", This
); /* No way of notifying yet! */
77 UINT WINAPI
IDirect3DDevice9Impl_GetAvailableTextureMem(LPDIRECT3DDEVICE9 iface
) {
78 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
79 FIXME("(%p) : stub, emulating 32Mb for now\n", This
);
81 * pretend we have 32MB of any type of memory queried.
83 return (1024*1024*32);
86 HRESULT WINAPI
IDirect3DDevice9Impl_EvictManagedRessources(LPDIRECT3DDEVICE9 iface
) {
87 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
88 FIXME("(%p) : stub\n", This
);
92 HRESULT WINAPI
IDirect3DDevice9Impl_GetDirect3D(LPDIRECT3DDEVICE9 iface
, IDirect3D9
** ppD3D9
) {
93 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
94 TRACE("(%p) : returning %p\n", This
, This
->direct3d
);
96 *ppD3D9
= (IDirect3D9
*) This
->direct3d
;
97 IDirect3D9_AddRef(*ppD3D9
);
101 HRESULT WINAPI
IDirect3DDevice9Impl_GetDeviceCaps(LPDIRECT3DDEVICE9 iface
, D3DCAPS9
* pCaps
) {
102 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
103 return IWineD3DDevice_GetDeviceCaps(This
->WineD3DDevice
, pCaps
);
106 HRESULT WINAPI
IDirect3DDevice9Impl_GetDisplayMode(LPDIRECT3DDEVICE9 iface
, UINT iSwapChain
, D3DDISPLAYMODE
* pMode
) {
107 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
108 return IWineD3DDevice_GetDisplayMode(This
->WineD3DDevice
, iSwapChain
, pMode
);
111 HRESULT WINAPI
IDirect3DDevice9Impl_GetCreationParameters(LPDIRECT3DDEVICE9 iface
, D3DDEVICE_CREATION_PARAMETERS
*pParameters
) {
112 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
113 FIXME("(%p) copying to %p\n", This
, pParameters
);
114 memcpy(pParameters
, &This
->CreateParms
, sizeof(D3DDEVICE_CREATION_PARAMETERS
));
118 HRESULT WINAPI
IDirect3DDevice9Impl_SetCursorProperties(LPDIRECT3DDEVICE9 iface
, UINT XHotSpot
, UINT YHotSpot
, IDirect3DSurface9
* pCursorBitmap
) {
119 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
120 FIXME("(%p) : Spot Pos(%u,%u)\n", This
, XHotSpot
, YHotSpot
);
123 IDirect3DSurface9Impl* pSur = (IDirect3DSurface9Impl*) pCursorBitmap;
124 if (D3DFMT_A8R8G8B8 != pSur->myDesc.Format) {
125 ERR("(%p) : surface(%p) have a invalid format\n", This, pCursorBitmap);
126 return D3DERR_INVALIDCALL;
128 if (32 != pSur->myDesc.Height || 32 != pSur->myDesc.Width) {
129 ERR("(%p) : surface(%p) have a invalid size\n", This, pCursorBitmap);
130 return D3DERR_INVALIDCALL;
134 This
->xHotSpot
= XHotSpot
;
135 This
->yHotSpot
= YHotSpot
;
139 void WINAPI
IDirect3DDevice9Impl_SetCursorPosition(LPDIRECT3DDEVICE9 iface
, int XScreenSpace
, int YScreenSpace
, DWORD Flags
) {
140 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
141 FIXME("(%p) : SetPos to (%u,%u)\n", This
, XScreenSpace
, YScreenSpace
);
142 This
->xScreenSpace
= XScreenSpace
;
143 This
->yScreenSpace
= YScreenSpace
;
147 BOOL WINAPI
IDirect3DDevice9Impl_ShowCursor(LPDIRECT3DDEVICE9 iface
, BOOL bShow
) {
148 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
149 FIXME("(%p) : visible(%d)\n", This
, bShow
);
150 This
->bCursorVisible
= bShow
;
154 HRESULT WINAPI
IDirect3DDevice9Impl_Reset(LPDIRECT3DDEVICE9 iface
, D3DPRESENT_PARAMETERS
* pPresentationParameters
) {
155 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
156 FIXME("(%p) : stub\n", This
);
160 HRESULT WINAPI
IDirect3DDevice9Impl_Present(LPDIRECT3DDEVICE9 iface
, CONST RECT
* pSourceRect
,CONST RECT
* pDestRect
,HWND hDestWindowOverride
,CONST RGNDATA
* pDirtyRegion
) {
161 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
162 return IWineD3DDevice_Present(This
->WineD3DDevice
, pSourceRect
, pDestRect
, hDestWindowOverride
, pDirtyRegion
);
165 HRESULT WINAPI
IDirect3DDevice9Impl_GetBackBuffer(LPDIRECT3DDEVICE9 iface
, UINT iSwapChain
, UINT BackBuffer
, D3DBACKBUFFER_TYPE Type
, IDirect3DSurface9
** ppBackBuffer
) {
166 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
168 IWineD3DSurface
*retSurface
= NULL
;
171 rc
= IWineD3DDevice_GetBackBuffer(This
->WineD3DDevice
, iSwapChain
, BackBuffer
, Type
, (IWineD3DSurface
**)&retSurface
);
172 if (rc
== D3D_OK
&& NULL
!= ppBackBuffer
) {
173 IWineD3DSurface_GetParent(retSurface
, (IUnknown
**)ppBackBuffer
);
174 IWineD3DSurface_Release(retSurface
);
179 HRESULT WINAPI
IDirect3DDevice9Impl_GetRasterStatus(LPDIRECT3DDEVICE9 iface
, UINT iSwapChain
, D3DRASTER_STATUS
* pRasterStatus
) {
180 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
181 FIXME("(%p) : stub\n", This
);
185 HRESULT WINAPI
IDirect3DDevice9Impl_SetDialogBoxMode(LPDIRECT3DDEVICE9 iface
, BOOL bEnableDialogs
) {
186 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
187 FIXME("(%p) : stub\n", This
);
191 void WINAPI
IDirect3DDevice9Impl_SetGammaRamp(LPDIRECT3DDEVICE9 iface
, UINT iSwapChain
, DWORD Flags
, CONST D3DGAMMARAMP
* pRamp
) {
193 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
195 FIXME("(%p) : pRamp@%p\n", This
, pRamp
);
196 hDC
= GetDC(This
->win_handle
);
197 SetDeviceGammaRamp(hDC
, (LPVOID
) pRamp
);
198 ReleaseDC(This
->win_handle
, hDC
);
202 void WINAPI
IDirect3DDevice9Impl_GetGammaRamp(LPDIRECT3DDEVICE9 iface
, UINT iSwapChain
, D3DGAMMARAMP
* pRamp
) {
204 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
206 FIXME("(%p) : pRamp@%p\n", This
, pRamp
);
207 hDC
= GetDC(This
->win_handle
);
208 GetDeviceGammaRamp(hDC
, pRamp
);
209 ReleaseDC(This
->win_handle
, hDC
);
213 HRESULT WINAPI
IDirect3DDevice9Impl_CreateRenderTarget(LPDIRECT3DDEVICE9 iface
, UINT Width
, UINT Height
,
214 D3DFORMAT Format
, D3DMULTISAMPLE_TYPE MultiSample
,
215 DWORD MultisampleQuality
, BOOL Lockable
,
216 IDirect3DSurface9
** ppSurface
, HANDLE
* pSharedHandle
) {
217 IDirect3DSurface9Impl
*object
;
218 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
219 HRESULT hrc
= D3D_OK
;
221 /* Allocate the storage for the device */
222 object
= HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY
, sizeof(IDirect3DSurface9Impl
));
223 if (NULL
== object
) {
224 FIXME("Allocation of memory failed\n");
226 return D3DERR_OUTOFVIDEOMEMORY
;
229 object
->lpVtbl
= &Direct3DSurface9_Vtbl
;
231 hrc
= IWineD3DDevice_CreateRenderTarget(This
->WineD3DDevice
, Width
, Height
, Format
, MultiSample
, MultisampleQuality
,
232 Lockable
, &object
->wineD3DSurface
, pSharedHandle
, (IUnknown
*)object
);
235 FIXME("(%p) call to IWineD3DDevice_CreateRenderTarget failed\n", This
);
236 HeapFree(GetProcessHeap(), 0, object
);
239 *ppSurface
= (LPDIRECT3DSURFACE9
) object
;
244 HRESULT WINAPI
IDirect3DDevice9Impl_CreateDepthStencilSurface(LPDIRECT3DDEVICE9 iface
, UINT Width
, UINT Height
, D3DFORMAT Format
, D3DMULTISAMPLE_TYPE MultiSample
, DWORD MultisampleQuality
, BOOL Discard
, IDirect3DSurface9
** ppSurface
, HANDLE
* pSharedHandle
) {
245 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
246 FIXME("(%p) : stub\n", This
);
250 HRESULT WINAPI
IDirect3DDevice9Impl_UpdateSurface(LPDIRECT3DDEVICE9 iface
, IDirect3DSurface9
* pSourceSurface
, CONST RECT
* pSourceRect
, IDirect3DSurface9
* pDestinationSurface
, CONST POINT
* pDestPoint
) {
251 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
252 FIXME("(%p) : stub\n", This
);
256 HRESULT WINAPI
IDirect3DDevice9Impl_UpdateTexture(LPDIRECT3DDEVICE9 iface
, IDirect3DBaseTexture9
* pSourceTexture
, IDirect3DBaseTexture9
* pDestinationTexture
) {
257 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
258 FIXME("(%p) : stub\n", This
);
262 HRESULT WINAPI
IDirect3DDevice9Impl_GetFrontBuffer(LPDIRECT3DDEVICE9 iface
, IDirect3DSurface9
* pDestSurface
) {
263 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
264 FIXME("(%p) : stub\n", This
);
268 HRESULT WINAPI
IDirect3DDevice9Impl_GetRenderTargetData(LPDIRECT3DDEVICE9 iface
, IDirect3DSurface9
* pRenderTarget
, IDirect3DSurface9
* pDestSurface
) {
269 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
270 FIXME("(%p) : stub\n", This
);
274 HRESULT WINAPI
IDirect3DDevice9Impl_GetFrontBufferData(LPDIRECT3DDEVICE9 iface
, UINT iSwapChain
, IDirect3DSurface9
* pDestSurface
) {
275 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
276 FIXME("(%p) : stub\n", This
);
280 HRESULT WINAPI
IDirect3DDevice9Impl_StretchRects(LPDIRECT3DDEVICE9 iface
, IDirect3DSurface9
* pSourceSurface
, CONST RECT
* pSourceRect
, IDirect3DSurface9
* pDestSurface
, CONST RECT
* pDestRect
, D3DTEXTUREFILTERTYPE Filter
) {
281 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
282 FIXME("(%p) : stub\n", This
);
286 HRESULT WINAPI
IDirect3DDevice9Impl_ColorFill(LPDIRECT3DDEVICE9 iface
, IDirect3DSurface9
* pSurface
, CONST RECT
* pRect
, D3DCOLOR color
) {
287 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
288 FIXME("(%p) : stub\n", This
);
292 HRESULT WINAPI
IDirect3DDevice9Impl_CreateOffscreenPlainSurface(LPDIRECT3DDEVICE9 iface
, UINT Width
, UINT Height
, D3DFORMAT Format
, D3DPOOL Pool
, IDirect3DSurface9
** ppSurface
, HANDLE
* pSharedHandle
) {
293 IDirect3DSurface9Impl
*object
;
294 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
295 HRESULT hrc
= D3D_OK
;
297 /* Allocate the storage for the device */
298 object
= HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY
, sizeof(IDirect3DSurface9Impl
));
299 if (NULL
== object
) {
300 FIXME("Allocation of memory failed\n");
302 return D3DERR_OUTOFVIDEOMEMORY
;
305 object
->lpVtbl
= &Direct3DSurface9_Vtbl
;
307 hrc
= IWineD3DDevice_CreateOffscreenPlainSurface(This
->WineD3DDevice
, Width
, Height
, Format
, Pool
,
308 &(object
->wineD3DSurface
), pSharedHandle
, (IUnknown
*)object
);
311 FIXME("(%p) call to IWineD3DDevice_CreateOffscreenPlainSurface failed\n", This
);
312 HeapFree(GetProcessHeap(), 0, object
);
315 *ppSurface
= (LPDIRECT3DSURFACE9
) object
;
320 HRESULT WINAPI
IDirect3DDevice9Impl_SetRenderTarget(LPDIRECT3DDEVICE9 iface
, DWORD RenderTargetIndex
, IDirect3DSurface9
* pRenderTarget
) {
321 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
322 FIXME("(%p) : stub\n", This
);
326 HRESULT WINAPI
IDirect3DDevice9Impl_GetRenderTarget(LPDIRECT3DDEVICE9 iface
, DWORD RenderTargetIndex
, IDirect3DSurface9
** ppRenderTarget
) {
327 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
328 FIXME("(%p) : stub\n", This
);
332 HRESULT WINAPI
IDirect3DDevice9Impl_SetDepthStencilSurface(LPDIRECT3DDEVICE9 iface
, IDirect3DSurface9
* pZStencilSurface
) {
333 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
334 FIXME("(%p) : stub\n", This
);
338 HRESULT WINAPI
IDirect3DDevice9Impl_GetDepthStencilSurface(LPDIRECT3DDEVICE9 iface
, IDirect3DSurface9
** ppZStencilSurface
) {
339 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
340 FIXME("(%p) : stub\n", This
);
344 HRESULT WINAPI
IDirect3DDevice9Impl_BeginScene(LPDIRECT3DDEVICE9 iface
) {
345 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
346 return IWineD3DDevice_BeginScene(This
->WineD3DDevice
);
349 HRESULT WINAPI
IDirect3DDevice9Impl_EndScene(LPDIRECT3DDEVICE9 iface
) {
350 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
351 return IWineD3DDevice_EndScene(This
->WineD3DDevice
);
354 HRESULT WINAPI
IDirect3DDevice9Impl_Clear(LPDIRECT3DDEVICE9 iface
, DWORD Count
, CONST D3DRECT
* pRects
, DWORD Flags
, D3DCOLOR Color
, float Z
, DWORD Stencil
) {
355 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
356 return IWineD3DDevice_Clear(This
->WineD3DDevice
, Count
, pRects
, Flags
, Color
, Z
, Stencil
);
359 HRESULT WINAPI
IDirect3DDevice9Impl_SetTransform(LPDIRECT3DDEVICE9 iface
, D3DTRANSFORMSTATETYPE State
, CONST D3DMATRIX
* lpMatrix
) {
360 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
361 return IWineD3DDevice_SetTransform(This
->WineD3DDevice
, State
, lpMatrix
);
364 HRESULT WINAPI
IDirect3DDevice9Impl_GetTransform(LPDIRECT3DDEVICE9 iface
, D3DTRANSFORMSTATETYPE State
, D3DMATRIX
* pMatrix
) {
365 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
366 return IWineD3DDevice_GetTransform(This
->WineD3DDevice
, State
, pMatrix
);
369 HRESULT WINAPI
IDirect3DDevice9Impl_MultiplyTransform(LPDIRECT3DDEVICE9 iface
, D3DTRANSFORMSTATETYPE State
, CONST D3DMATRIX
* pMatrix
) {
370 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
371 return IWineD3DDevice_MultiplyTransform(This
->WineD3DDevice
, State
, pMatrix
);
374 HRESULT WINAPI
IDirect3DDevice9Impl_SetViewport(LPDIRECT3DDEVICE9 iface
, CONST D3DVIEWPORT9
* pViewport
) {
375 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
376 return IWineD3DDevice_SetViewport(This
->WineD3DDevice
, (WINED3DVIEWPORT
*)pViewport
);
379 HRESULT WINAPI
IDirect3DDevice9Impl_GetViewport(LPDIRECT3DDEVICE9 iface
, D3DVIEWPORT9
* pViewport
) {
380 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
381 return IWineD3DDevice_GetViewport(This
->WineD3DDevice
, (WINED3DVIEWPORT
*)pViewport
);
384 HRESULT WINAPI
IDirect3DDevice9Impl_SetMaterial(LPDIRECT3DDEVICE9 iface
, CONST D3DMATERIAL9
* pMaterial
) {
385 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
386 return IWineD3DDevice_SetMaterial(This
->WineD3DDevice
, (WINED3DMATERIAL
*)pMaterial
);
389 HRESULT WINAPI
IDirect3DDevice9Impl_GetMaterial(LPDIRECT3DDEVICE9 iface
, D3DMATERIAL9
* pMaterial
) {
390 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
391 return IWineD3DDevice_GetMaterial(This
->WineD3DDevice
, (WINED3DMATERIAL
*)pMaterial
);
394 HRESULT WINAPI
IDirect3DDevice9Impl_SetLight(LPDIRECT3DDEVICE9 iface
, DWORD Index
, CONST D3DLIGHT9
* pLight
) {
395 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
396 return IWineD3DDevice_SetLight(This
->WineD3DDevice
, Index
, (WINED3DLIGHT
*)pLight
);
399 HRESULT WINAPI
IDirect3DDevice9Impl_GetLight(LPDIRECT3DDEVICE9 iface
, DWORD Index
, D3DLIGHT9
* pLight
) {
400 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
401 return IWineD3DDevice_GetLight(This
->WineD3DDevice
, Index
, (WINED3DLIGHT
*)pLight
);
404 HRESULT WINAPI
IDirect3DDevice9Impl_LightEnable(LPDIRECT3DDEVICE9 iface
, DWORD Index
, BOOL Enable
) {
405 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
406 return IWineD3DDevice_SetLightEnable(This
->WineD3DDevice
, Index
, Enable
);
409 HRESULT WINAPI
IDirect3DDevice9Impl_GetLightEnable(LPDIRECT3DDEVICE9 iface
, DWORD Index
, BOOL
* pEnable
) {
410 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
411 return IWineD3DDevice_GetLightEnable(This
->WineD3DDevice
, Index
, pEnable
);
414 HRESULT WINAPI
IDirect3DDevice9Impl_SetClipPlane(LPDIRECT3DDEVICE9 iface
, DWORD Index
, CONST
float* pPlane
) {
415 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
416 return IWineD3DDevice_SetClipPlane(This
->WineD3DDevice
, Index
, pPlane
);
419 HRESULT WINAPI
IDirect3DDevice9Impl_GetClipPlane(LPDIRECT3DDEVICE9 iface
, DWORD Index
, float* pPlane
) {
420 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
421 return IWineD3DDevice_GetClipPlane(This
->WineD3DDevice
, Index
, pPlane
);
424 HRESULT WINAPI
IDirect3DDevice9Impl_SetRenderState(LPDIRECT3DDEVICE9 iface
, D3DRENDERSTATETYPE State
, DWORD Value
) {
425 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
426 return IWineD3DDevice_SetRenderState(This
->WineD3DDevice
, State
, Value
);
429 HRESULT WINAPI
IDirect3DDevice9Impl_GetRenderState(LPDIRECT3DDEVICE9 iface
, D3DRENDERSTATETYPE State
, DWORD
* pValue
) {
430 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
431 return IWineD3DDevice_GetRenderState(This
->WineD3DDevice
, State
, pValue
);
434 HRESULT WINAPI
IDirect3DDevice9Impl_SetClipStatus(LPDIRECT3DDEVICE9 iface
, CONST D3DCLIPSTATUS9
* pClipStatus
) {
435 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
436 return IWineD3DDevice_SetClipStatus(This
->WineD3DDevice
, (WINED3DCLIPSTATUS
*)pClipStatus
);
439 HRESULT WINAPI
IDirect3DDevice9Impl_GetClipStatus(LPDIRECT3DDEVICE9 iface
, D3DCLIPSTATUS9
* pClipStatus
) {
440 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
441 return IWineD3DDevice_GetClipStatus(This
->WineD3DDevice
, (WINED3DCLIPSTATUS
*)pClipStatus
);
444 HRESULT WINAPI
IDirect3DDevice9Impl_GetTexture(LPDIRECT3DDEVICE9 iface
, DWORD Stage
, IDirect3DBaseTexture9
** ppTexture
) {
445 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
446 IWineD3DBaseTexture
*retTexture
= NULL
;
449 rc
= IWineD3DDevice_GetTexture(This
->WineD3DDevice
, Stage
, (IWineD3DBaseTexture
**)&retTexture
);
450 if (rc
== D3D_OK
&& NULL
!= ppTexture
) {
451 IWineD3DBaseTexture_GetParent(retTexture
, (IUnknown
**)ppTexture
);
452 IWineD3DBaseTexture_Release(retTexture
);
457 HRESULT WINAPI
IDirect3DDevice9Impl_SetTexture(LPDIRECT3DDEVICE9 iface
, DWORD Stage
, IDirect3DBaseTexture9
* pTexture
) {
458 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
459 return IWineD3DDevice_SetTexture(This
->WineD3DDevice
, Stage
,
460 pTexture
==NULL
? NULL
:((IDirect3DBaseTexture9Impl
*)pTexture
)->wineD3DBaseTexture
);
463 HRESULT WINAPI
IDirect3DDevice9Impl_GetTextureStageState(LPDIRECT3DDEVICE9 iface
, DWORD Stage
, D3DTEXTURESTAGESTATETYPE Type
, DWORD
* pValue
) {
464 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
465 return IWineD3DDevice_GetTextureStageState(This
->WineD3DDevice
, Stage
, Type
, pValue
);
468 HRESULT WINAPI
IDirect3DDevice9Impl_SetTextureStageState(LPDIRECT3DDEVICE9 iface
, DWORD Stage
, D3DTEXTURESTAGESTATETYPE Type
, DWORD Value
) {
469 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
470 return IWineD3DDevice_SetTextureStageState(This
->WineD3DDevice
, Stage
, Type
, Value
);
473 HRESULT WINAPI
IDirect3DDevice9Impl_GetSamplerState(LPDIRECT3DDEVICE9 iface
, DWORD Sampler
, D3DSAMPLERSTATETYPE Type
, DWORD
* pValue
) {
474 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
475 FIXME("(%p) : stub\n", This
);
479 HRESULT WINAPI
IDirect3DDevice9Impl_SetSamplerState(LPDIRECT3DDEVICE9 iface
, DWORD Sampler
, D3DSAMPLERSTATETYPE Type
, DWORD Value
) {
480 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
481 FIXME("(%p) : stub\n", This
);
485 HRESULT WINAPI
IDirect3DDevice9Impl_ValidateDevice(LPDIRECT3DDEVICE9 iface
, DWORD
* pNumPasses
) {
486 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
487 TRACE("(%p) : stub\n", This
);
491 HRESULT WINAPI
IDirect3DDevice9Impl_SetPaletteEntries(LPDIRECT3DDEVICE9 iface
, UINT PaletteNumber
, CONST PALETTEENTRY
* pEntries
) {
492 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
493 FIXME("(%p) : setting p[%u] <= RGBA(%02x,%02x,%02x,%02x)\n", This
, PaletteNumber
, pEntries
->peRed
, pEntries
->peGreen
, pEntries
->peBlue
, pEntries
->peFlags
);
494 memcpy(This
->palettes
[PaletteNumber
], pEntries
, 256 * sizeof(PALETTEENTRY
));
498 HRESULT WINAPI
IDirect3DDevice9Impl_GetPaletteEntries(LPDIRECT3DDEVICE9 iface
, UINT PaletteNumber
, PALETTEENTRY
* pEntries
) {
499 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
500 memcpy(pEntries
, This
->palettes
[PaletteNumber
], 256 * sizeof(PALETTEENTRY
));
501 FIXME("(%p) : returning p[%u] => RGBA(%02x,%02x,%02x,%02x)\n", This
, PaletteNumber
, pEntries
->peRed
, pEntries
->peGreen
, pEntries
->peBlue
, pEntries
->peFlags
);
505 HRESULT WINAPI
IDirect3DDevice9Impl_SetCurrentTexturePalette(LPDIRECT3DDEVICE9 iface
, UINT PaletteNumber
) {
506 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
507 TRACE("(%p) : stub\n", This
);
511 HRESULT WINAPI
IDirect3DDevice9Impl_GetCurrentTexturePalette(LPDIRECT3DDEVICE9 iface
, UINT
* PaletteNumber
) {
512 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
513 *PaletteNumber
= This
->currentPalette
;
514 FIXME("(%p) : Returning (%u)\n", This
, *PaletteNumber
);
518 HRESULT WINAPI
IDirect3DDevice9Impl_SetScissorRect(LPDIRECT3DDEVICE9 iface
, CONST RECT
* pRect
) {
519 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
520 FIXME("(%p) : stub\n", This
);
524 HRESULT WINAPI
IDirect3DDevice9Impl_GetScissorRect(LPDIRECT3DDEVICE9 iface
, RECT
* pRect
) {
525 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
526 FIXME("(%p) : stub\n", This
);
530 HRESULT WINAPI
IDirect3DDevice9Impl_SetSoftwareVertexProcessing(LPDIRECT3DDEVICE9 iface
, BOOL bSoftware
) {
531 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
532 FIXME("(%p) : stub\n", This
);
536 BOOL WINAPI
IDirect3DDevice9Impl_GetSoftwareVertexProcessing(LPDIRECT3DDEVICE9 iface
) {
537 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
538 FIXME("(%p) : stub\n", This
);
542 HRESULT WINAPI
IDirect3DDevice9Impl_SetNPatchMode(LPDIRECT3DDEVICE9 iface
, float nSegments
) {
543 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
544 FIXME("(%p) : stub\n", This
);
548 float WINAPI
IDirect3DDevice9Impl_GetNPatchMode(LPDIRECT3DDEVICE9 iface
) {
549 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
550 FIXME("(%p) : stub\n", This
);
554 HRESULT WINAPI
IDirect3DDevice9Impl_DrawPrimitive(LPDIRECT3DDEVICE9 iface
, D3DPRIMITIVETYPE PrimitiveType
, UINT StartVertex
, UINT PrimitiveCount
) {
555 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
556 return IWineD3DDevice_DrawPrimitive(This
->WineD3DDevice
, PrimitiveType
, StartVertex
, PrimitiveCount
);
559 HRESULT WINAPI
IDirect3DDevice9Impl_DrawIndexedPrimitive(LPDIRECT3DDEVICE9 iface
, D3DPRIMITIVETYPE PrimitiveType
,
560 INT BaseVertexIndex
, UINT MinVertexIndex
, UINT NumVertices
, UINT startIndex
, UINT primCount
) {
561 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
562 return IWineD3DDevice_DrawIndexedPrimitive(This
->WineD3DDevice
, PrimitiveType
, BaseVertexIndex
, MinVertexIndex
, NumVertices
, startIndex
, primCount
);
565 HRESULT WINAPI
IDirect3DDevice9Impl_DrawPrimitiveUP(LPDIRECT3DDEVICE9 iface
, D3DPRIMITIVETYPE PrimitiveType
, UINT PrimitiveCount
, CONST
void* pVertexStreamZeroData
, UINT VertexStreamZeroStride
) {
566 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
567 return IWineD3DDevice_DrawPrimitiveUP(This
->WineD3DDevice
, PrimitiveType
, PrimitiveCount
, pVertexStreamZeroData
, VertexStreamZeroStride
);
570 HRESULT WINAPI
IDirect3DDevice9Impl_DrawIndexedPrimitiveUP(LPDIRECT3DDEVICE9 iface
, D3DPRIMITIVETYPE PrimitiveType
, UINT MinVertexIndex
,
571 UINT NumVertexIndices
, UINT PrimitiveCount
, CONST
void* pIndexData
,
572 D3DFORMAT IndexDataFormat
, CONST
void* pVertexStreamZeroData
, UINT VertexStreamZeroStride
) {
573 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
574 return IWineD3DDevice_DrawIndexedPrimitiveUP(This
->WineD3DDevice
, PrimitiveType
, MinVertexIndex
, NumVertexIndices
, PrimitiveCount
,
575 pIndexData
, IndexDataFormat
, pVertexStreamZeroData
, VertexStreamZeroStride
);
578 HRESULT WINAPI
IDirect3DDevice9Impl_ProcessVertices(LPDIRECT3DDEVICE9 iface
, UINT SrcStartIndex
, UINT DestIndex
, UINT VertexCount
, IDirect3DVertexBuffer9
* pDestBuffer
, IDirect3DVertexDeclaration9
* pVertexDecl
, DWORD Flags
) {
579 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
580 FIXME("(%p) : stub\n", This
);
584 HRESULT WINAPI
IDirect3DDevice9Impl_SetFVF(LPDIRECT3DDEVICE9 iface
, DWORD FVF
) {
585 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
586 return IWineD3DDevice_SetFVF(This
->WineD3DDevice
, FVF
);
589 HRESULT WINAPI
IDirect3DDevice9Impl_GetFVF(LPDIRECT3DDEVICE9 iface
, DWORD
* pFVF
) {
590 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
591 return IWineD3DDevice_GetFVF(This
->WineD3DDevice
, pFVF
);
594 HRESULT WINAPI
IDirect3DDevice9Impl_SetStreamSource(LPDIRECT3DDEVICE9 iface
, UINT StreamNumber
, IDirect3DVertexBuffer9
* pStreamData
, UINT OffsetInBytes
, UINT Stride
) {
595 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
596 return IWineD3DDevice_SetStreamSource(This
->WineD3DDevice
, StreamNumber
,
597 pStreamData
==NULL
? NULL
:((IDirect3DVertexBuffer9Impl
*)pStreamData
)->wineD3DVertexBuffer
,
598 OffsetInBytes
, Stride
);
601 HRESULT WINAPI
IDirect3DDevice9Impl_GetStreamSource(LPDIRECT3DDEVICE9 iface
, UINT StreamNumber
, IDirect3DVertexBuffer9
** pStream
, UINT
* OffsetInBytes
, UINT
* pStride
) {
602 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
603 IWineD3DVertexBuffer
*retStream
= NULL
;
606 rc
= IWineD3DDevice_GetStreamSource(This
->WineD3DDevice
, StreamNumber
, (IWineD3DVertexBuffer
**)&retStream
, OffsetInBytes
, pStride
);
607 if (rc
== D3D_OK
&& NULL
!= pStream
) {
608 IWineD3DVertexBuffer_GetParent(retStream
, (IUnknown
**)pStream
);
609 IWineD3DVertexBuffer_Release(retStream
);
614 HRESULT WINAPI
IDirect3DDevice9Impl_SetStreamSourceFreq(LPDIRECT3DDEVICE9 iface
, UINT StreamNumber
, UINT Divider
) {
615 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
616 FIXME("(%p) : stub\n", This
);
620 HRESULT WINAPI
IDirect3DDevice9Impl_GetStreamSourceFreq(LPDIRECT3DDEVICE9 iface
, UINT StreamNumber
, UINT
* Divider
) {
621 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
622 FIXME("(%p) : stub\n", This
);
626 HRESULT WINAPI
IDirect3DDevice9Impl_SetIndices(LPDIRECT3DDEVICE9 iface
, IDirect3DIndexBuffer9
* pIndexData
) {
627 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
628 return IWineD3DDevice_SetIndices(This
->WineD3DDevice
,
629 pIndexData
==NULL
? NULL
:((IDirect3DIndexBuffer9Impl
*)pIndexData
)->wineD3DIndexBuffer
,
633 HRESULT WINAPI
IDirect3DDevice9Impl_GetIndices(LPDIRECT3DDEVICE9 iface
, IDirect3DIndexBuffer9
** ppIndexData
) {
634 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
635 IWineD3DIndexBuffer
*retIndexData
= NULL
;
639 rc
= IWineD3DDevice_GetIndices(This
->WineD3DDevice
, &retIndexData
, &tmp
);
640 if (rc
== D3D_OK
&& NULL
!= ppIndexData
) {
641 IWineD3DVertexBuffer_GetParent(retIndexData
, (IUnknown
**)ppIndexData
);
642 IWineD3DVertexBuffer_Release(retIndexData
);
647 HRESULT WINAPI
IDirect3DDevice9Impl_DrawRectPatch(LPDIRECT3DDEVICE9 iface
, UINT Handle
,CONST
float* pNumSegs
,CONST D3DRECTPATCH_INFO
* pRectPatchInfo
) {
648 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
649 FIXME("(%p) : stub\n", This
);
653 HRESULT WINAPI
IDirect3DDevice9Impl_DrawTriPatch(LPDIRECT3DDEVICE9 iface
, UINT Handle
,CONST
float* pNumSegs
,CONST D3DTRIPATCH_INFO
* pTriPatchInfo
) {
654 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
655 FIXME("(%p) : stub\n", This
);
659 HRESULT WINAPI
IDirect3DDevice9Impl_DeletePatch(LPDIRECT3DDEVICE9 iface
, UINT Handle
) {
660 IDirect3DDevice9Impl
*This
= (IDirect3DDevice9Impl
*)iface
;
661 FIXME("(%p) : stub\n", This
);
666 IDirect3DDevice9Vtbl Direct3DDevice9_Vtbl
=
668 IDirect3DDevice9Impl_QueryInterface
,
669 IDirect3DDevice9Impl_AddRef
,
670 IDirect3DDevice9Impl_Release
,
671 IDirect3DDevice9Impl_TestCooperativeLevel
,
672 IDirect3DDevice9Impl_GetAvailableTextureMem
,
673 IDirect3DDevice9Impl_EvictManagedRessources
,
674 IDirect3DDevice9Impl_GetDirect3D
,
675 IDirect3DDevice9Impl_GetDeviceCaps
,
676 IDirect3DDevice9Impl_GetDisplayMode
,
677 IDirect3DDevice9Impl_GetCreationParameters
,
678 IDirect3DDevice9Impl_SetCursorProperties
,
679 IDirect3DDevice9Impl_SetCursorPosition
,
680 IDirect3DDevice9Impl_ShowCursor
,
681 IDirect3DDevice9Impl_CreateAdditionalSwapChain
,
682 IDirect3DDevice9Impl_GetSwapChain
,
683 IDirect3DDevice9Impl_GetNumberOfSwapChains
,
684 IDirect3DDevice9Impl_Reset
,
685 IDirect3DDevice9Impl_Present
,
686 IDirect3DDevice9Impl_GetBackBuffer
,
687 IDirect3DDevice9Impl_GetRasterStatus
,
688 IDirect3DDevice9Impl_SetDialogBoxMode
,
689 IDirect3DDevice9Impl_SetGammaRamp
,
690 IDirect3DDevice9Impl_GetGammaRamp
,
691 IDirect3DDevice9Impl_CreateTexture
,
692 IDirect3DDevice9Impl_CreateVolumeTexture
,
693 IDirect3DDevice9Impl_CreateCubeTexture
,
694 IDirect3DDevice9Impl_CreateVertexBuffer
,
695 IDirect3DDevice9Impl_CreateIndexBuffer
,
696 IDirect3DDevice9Impl_CreateRenderTarget
,
697 IDirect3DDevice9Impl_CreateDepthStencilSurface
,
698 IDirect3DDevice9Impl_UpdateSurface
,
699 IDirect3DDevice9Impl_UpdateTexture
,
700 IDirect3DDevice9Impl_GetRenderTargetData
,
701 IDirect3DDevice9Impl_GetFrontBufferData
,
702 IDirect3DDevice9Impl_StretchRects
,
703 IDirect3DDevice9Impl_ColorFill
,
704 IDirect3DDevice9Impl_CreateOffscreenPlainSurface
,
705 IDirect3DDevice9Impl_SetRenderTarget
,
706 IDirect3DDevice9Impl_GetRenderTarget
,
707 IDirect3DDevice9Impl_SetDepthStencilSurface
,
708 IDirect3DDevice9Impl_GetDepthStencilSurface
,
709 IDirect3DDevice9Impl_BeginScene
,
710 IDirect3DDevice9Impl_EndScene
,
711 IDirect3DDevice9Impl_Clear
,
712 IDirect3DDevice9Impl_SetTransform
,
713 IDirect3DDevice9Impl_GetTransform
,
714 IDirect3DDevice9Impl_MultiplyTransform
,
715 IDirect3DDevice9Impl_SetViewport
,
716 IDirect3DDevice9Impl_GetViewport
,
717 IDirect3DDevice9Impl_SetMaterial
,
718 IDirect3DDevice9Impl_GetMaterial
,
719 IDirect3DDevice9Impl_SetLight
,
720 IDirect3DDevice9Impl_GetLight
,
721 IDirect3DDevice9Impl_LightEnable
,
722 IDirect3DDevice9Impl_GetLightEnable
,
723 IDirect3DDevice9Impl_SetClipPlane
,
724 IDirect3DDevice9Impl_GetClipPlane
,
725 IDirect3DDevice9Impl_SetRenderState
,
726 IDirect3DDevice9Impl_GetRenderState
,
727 IDirect3DDevice9Impl_CreateStateBlock
,
728 IDirect3DDevice9Impl_BeginStateBlock
,
729 IDirect3DDevice9Impl_EndStateBlock
,
730 IDirect3DDevice9Impl_SetClipStatus
,
731 IDirect3DDevice9Impl_GetClipStatus
,
732 IDirect3DDevice9Impl_GetTexture
,
733 IDirect3DDevice9Impl_SetTexture
,
734 IDirect3DDevice9Impl_GetTextureStageState
,
735 IDirect3DDevice9Impl_SetTextureStageState
,
736 IDirect3DDevice9Impl_GetSamplerState
,
737 IDirect3DDevice9Impl_SetSamplerState
,
738 IDirect3DDevice9Impl_ValidateDevice
,
739 IDirect3DDevice9Impl_SetPaletteEntries
,
740 IDirect3DDevice9Impl_GetPaletteEntries
,
741 IDirect3DDevice9Impl_SetCurrentTexturePalette
,
742 IDirect3DDevice9Impl_GetCurrentTexturePalette
,
743 IDirect3DDevice9Impl_SetScissorRect
,
744 IDirect3DDevice9Impl_GetScissorRect
,
745 IDirect3DDevice9Impl_SetSoftwareVertexProcessing
,
746 IDirect3DDevice9Impl_GetSoftwareVertexProcessing
,
747 IDirect3DDevice9Impl_SetNPatchMode
,
748 IDirect3DDevice9Impl_GetNPatchMode
,
749 IDirect3DDevice9Impl_DrawPrimitive
,
750 IDirect3DDevice9Impl_DrawIndexedPrimitive
,
751 IDirect3DDevice9Impl_DrawPrimitiveUP
,
752 IDirect3DDevice9Impl_DrawIndexedPrimitiveUP
,
753 IDirect3DDevice9Impl_ProcessVertices
,
754 IDirect3DDevice9Impl_CreateVertexDeclaration
,
755 IDirect3DDevice9Impl_SetVertexDeclaration
,
756 IDirect3DDevice9Impl_GetVertexDeclaration
,
757 IDirect3DDevice9Impl_SetFVF
,
758 IDirect3DDevice9Impl_GetFVF
,
759 IDirect3DDevice9Impl_CreateVertexShader
,
760 IDirect3DDevice9Impl_SetVertexShader
,
761 IDirect3DDevice9Impl_GetVertexShader
,
762 IDirect3DDevice9Impl_SetVertexShaderConstantF
,
763 IDirect3DDevice9Impl_GetVertexShaderConstantF
,
764 IDirect3DDevice9Impl_SetVertexShaderConstantI
,
765 IDirect3DDevice9Impl_GetVertexShaderConstantI
,
766 IDirect3DDevice9Impl_SetVertexShaderConstantB
,
767 IDirect3DDevice9Impl_GetVertexShaderConstantB
,
768 IDirect3DDevice9Impl_SetStreamSource
,
769 IDirect3DDevice9Impl_GetStreamSource
,
770 IDirect3DDevice9Impl_SetStreamSourceFreq
,
771 IDirect3DDevice9Impl_GetStreamSourceFreq
,
772 IDirect3DDevice9Impl_SetIndices
,
773 IDirect3DDevice9Impl_GetIndices
,
774 IDirect3DDevice9Impl_CreatePixelShader
,
775 IDirect3DDevice9Impl_SetPixelShader
,
776 IDirect3DDevice9Impl_GetPixelShader
,
777 IDirect3DDevice9Impl_SetPixelShaderConstantF
,
778 IDirect3DDevice9Impl_GetPixelShaderConstantF
,
779 IDirect3DDevice9Impl_SetPixelShaderConstantI
,
780 IDirect3DDevice9Impl_GetPixelShaderConstantI
,
781 IDirect3DDevice9Impl_SetPixelShaderConstantB
,
782 IDirect3DDevice9Impl_GetPixelShaderConstantB
,
783 IDirect3DDevice9Impl_DrawRectPatch
,
784 IDirect3DDevice9Impl_DrawTriPatch
,
785 IDirect3DDevice9Impl_DeletePatch
,
786 IDirect3DDevice9Impl_CreateQuery