UWP + DirectX11:鼠标移动

时间:2019-01-20 14:22:03

标签: uwp directx-11

我正在使用DX11为C ++中的UWP编写一个游戏引擎。我正在使用CoreWindow输入事件将输入中继到游戏引擎(按钮,键和鼠标移动)。但是,我在创建FPS相机时遇到了问题。我想做的就是将鼠标光标放在屏幕中心的零位置,然后读取相对于该点的任何运动,这样我就可以确定相机视图的旋转角度。

这几乎被证明是不可能的...首先,由于PointerPosition上的CoreWindow是只读的,因此无法设置鼠标光标的位置(我现在一直在咒骂Microsoft,小时,为什么他们会继续为我们开发人员设置这些愚蠢的障碍?)。而且我需要能够为零,否则我将受到屏幕的限制。

DXInput似乎不起作用,Intellisense可以识别接口,但编译器不能,这至少可以说是很奇怪。

1 个答案:

答案 0 :(得分:2)

我已经在PC上进行了测试,并且可以在PointerPosition上设置CoreWindow,如下所示:

CoreWindow^ window = CoreWindow::GetForCurrentThread();
window->PointerPosition = Point(10, 10);

然后,指针实际上按预期方式移动到窗口中的给定位置。