我正在写一个游戏引擎为UWP在C++中,使用DX11。我使用CoreWindow
输入事件将输入传递到游戏引擎(按钮、按键和鼠标移动)。然而,我在创建FPS相机时遇到了问题。我想要做的是将鼠标光标放在屏幕的中心,然后读取相对于该点的任何移动,这样我就可以确定相机视图的旋转。
事实证明,这几乎是不可能的。首先,设置鼠标光标位置是不可能的,因为CoreWindow
上的PointerPosition
是只读的(这是我已经咒骂微软几个小时了,为什么他们一直为我们开发人员设置这些愚蠢的封锁?)。我需要能够归零,否则我会受到屏幕的限制。
DXInput似乎不工作,智能感知识别接口,但编译器不能,这至少可以说是超级奇怪的。
发布于 2019-01-21 02:58:42
我已经在我的PC上进行了测试,我能够在CoreWindow
上设置PointerPosition
,如下所示:
CoreWindow^ window = CoreWindow::GetForCurrentThread();
window->PointerPosition = Point(10, 10);
然后,指针实际上如预期的那样移动到窗口中的给定位置。
https://stackoverflow.com/questions/54277398
复制相似问题