gpt4 book ai didi

c++ - 在没有 glutWarpPointer 的情况下移动鼠标

转载 作者:太空宇宙 更新时间:2023-11-04 14:19:42 25 4
gpt4 key购买 nike

我正尝试在我的 OpenGL 应用程序中通过 gluLookAt 移动相机,类似于相机在 FPS 游戏中的移动方式。它有效,但是,我想在移动鼠标后将其居中,以禁止鼠标到达屏幕边缘。在做了一些研究之后,我发现 glutWarpPointer 是一个可行的选择,但是,我觉得专业游戏开发人员只使用基本的 OpenGL 命令,而不是像 glutWarpPointer、glutSolidCube 或 glutSolidSphere 这样的东西。我的假设是否正确?

在我的 WndProc 函数中,我在我的开关 block 中的 WM_MOUSEMOVE 消息下设置了我的 gluLookAt 的外观。我也意识到 SendInput 会实现我想要的,但根据我的理解,当光标移动到屏幕中间时,SendInput 会触发另一个 WM_MOUSEMOVE,基本上反转我原来的鼠标移动,并且根本不会移动相机的外观。

有什么想法吗?

编辑:我不认为存在不调用 WM_MOUSEMOVE 消息的函数。我认为正确的方法是创建一个标志来确定 WM_MOUSEMOVE 是否被 SetCursorPos 调用,如果是,则不要更改相机的外观。

最佳答案

使用SetCursorPos如果您使用的是 Windows,请重新定位鼠标光标。

关于c++ - 在没有 glutWarpPointer 的情况下移动鼠标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8568622/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com