jp9000 6d33f7e091 win-capture: Add trick to ensure game cap. shared tex support
This new trick forgoes the use of patches and allows the ability to use
shared GPU resources despite being a Direct3D 9.0c context.
2016-08-12 18:44:54 -07:00

44 lines
1.1 KiB
C

#define _CRT_SECURE_NO_WARNINGS
#include <inttypes.h>
#include <stdio.h>
#include <windows.h>
#include "get-graphics-offsets.h"
int main(int argc, char *argv[])
{
struct d3d8_offsets d3d8 = {0};
struct d3d9_offsets d3d9 = {0};
struct dxgi_offsets dxgi = {0};
WNDCLASSA wc = {0};
wc.style = CS_OWNDC;
wc.hInstance = GetModuleHandleA(NULL);
wc.lpfnWndProc = (WNDPROC)DefWindowProcA;
wc.lpszClassName = DUMMY_WNDCLASS;
if (!RegisterClassA(&wc)) {
printf("failed to register '%s'\n", DUMMY_WNDCLASS);
return -1;
}
get_d3d9_offsets(&d3d9);
get_d3d8_offsets(&d3d8);
get_dxgi_offsets(&dxgi);
printf("[d3d8]\n");
printf("present=0x%"PRIx32"\n", d3d8.present);
printf("[d3d9]\n");
printf("present=0x%"PRIx32"\n", d3d9.present);
printf("present_ex=0x%"PRIx32"\n", d3d9.present_ex);
printf("present_swap=0x%"PRIx32"\n", d3d9.present_swap);
printf("d3d9_clsoff=0x%"PRIx32"\n", d3d9.d3d9_clsoff);
printf("is_d3d9ex_clsoff=0x%"PRIx32"\n", d3d9.is_d3d9ex_clsoff);
printf("[dxgi]\n");
printf("present=0x%"PRIx32"\n", dxgi.present);
printf("resize=0x%"PRIx32"\n", dxgi.resize);
(void)argc;
(void)argv;
return 0;
}