UWP + DirectX11:鼠标移动

UWP + DirectX11: Mouse movement

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

这已被证明几乎不可能...首先,设置鼠标光标位置是不可能的,因为 PointerPosition on CoreWindow 是只读的(我一直在诅咒微软现在几个小时,为什么他们一直为我们的开发人员设置这些愚蠢的封锁?)。而且我需要能归零,不然会被屏幕限制。

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

我已经在我的电脑上测试过,我可以在 CoreWindow 上设置 PointerPosition,如下所示:

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

然后指针实际上按预期移动到 window 中的给定位置。