Exemplo n.º 1
0
//------------------------------------------------------------------------------------------
//	Function name:	Mine_Direct3DCreate9
//	Description:	The trampoline for Direct3DCreate9 call. In it we create our own IDirect3D9 
//					object, which inherits IDirect3D9. It enables us to manipulate calls used
//					for this device as we are the middle man in this configuration.
//	Parameters:		SDKVersion : The SDK version for us to use.
//	Returns:		Our IDirect3D9 instance which encapsulate a real IDirect3D9
//------------------------------------------------------------------------------------------
IDirect3D9* WINAPI Mine_Direct3DCreate9(UINT SDKVersion)
{
	LOGFILE("Direct3DCreate9 called.\n");
	IDirect3D9* Direct3D = Real_Direct3DCreate9(SDKVersion);
	IDirect3D9* Mine_Direct3D = new Direct3D9Wrapper(Direct3D);
	return Mine_Direct3D;
}
Exemplo n.º 2
0
static IDirect3D9 * __stdcall Mine_Direct3DCreate9(UINT SDKVersion)
{
  IDirect3D9 *d3d9 = Real_Direct3DCreate9(SDKVersion);

  if(d3d9)
  {
    printLog("video/d3d9: IDirect3D9 object created.\n");
    HookCOMOnce(&Real_D3D9_CreateDevice,d3d9,16,Mine_D3D9_CreateDevice);
  }

  return d3d9;
}