我正在使用Windows和DirectX制作游戏。我给自己定的窗口和设备1024×768两者Windows到DirectX鼠标坐标
Windows:
RECT r={0,0,1024,768};
int style = WS_OVERLAPPED | WS_MINIMIZEBOX | WS_SYSMENU;
AdjustWindowRect(&r,style,false);
CreateWindow...
DirectX:
d3dpp.BackBufferWidth=1024;
d3dpp.BackBufferHeight=768;
CreateDevice...
然而,当我读到使用
GetCursorPos(&p);
ScreenToClient(g_hWnd, &p);
鼠标位置的一些返回的坐标是1024x768的边界之外。我不得不说,如果我使用(0,0,1024,768)坐标限制渲染精灵,则DirectX将显示它,就好像它使用1024x768一样。
我该如何将1024x768的DirectX转换为1024x768的Windows?
在此先感谢
...或从Windows到DirectX。如果不使用适当的值配置DirectX设备,我至少需要适当的公式来进行转换 – user1625678