gpt4 book ai didi

c++ - GLFW - Mac OS X 10.7 上带有 OpenGL 相机的 glfwSetMousePos Bug

转载 作者:太空狗 更新时间:2023-10-29 21:46:46 25 4
gpt4 key购买 nike

我一直在关注 http://opengl-tutorials.org 上的教程到目前为止它们都很出色(我在 Mac 上,所以我必须使用 OpenGL 3.2 和 GLSL 1.50 而不是 OpenGL 3.3 和 GLSL 3.30)。到目前为止,教程的唯一问题是使用 3D 相机教程(教程 6:键盘和鼠标),当我移动鼠标时,我没有任何旋转,即使我旋转了,也只会很慢向下方向;即使我向任何方向移动鼠标。

我已经编译了给定的代码(OpenGL 2.1 和 3.x)并手动编写了它,但仍然存在这个错误。我不知道为什么会这样。这可能是 GLFW、Mac OS X 或其他软件的错误吗?

最佳答案

我知道这是一个很老的问题,但我遇到了同样的问题,所以它可能会有所帮助。我已经从网站上下载了代码,并且在 common/controls.cpp 中对这一行进行了注释:

glfwSetMousePos(1024/2, 768/2);

显然,在 MacOS 的 GLFW 中存在一个错误,该指令无法正常工作。希望他们在较新的版本中修复了它,但我还没有测试过。

旁注,注释此行将使教程有效,但在夹紧垂直相机角度时可能会遇到一些问题:如果将鼠标移过夹紧点(比如向上),鼠标位置将保持不变更新,当您向下移动鼠标时,您将不得不等到它到达夹紧点,然后相机再次移动。

[编辑] 这是完整的修改代码

// Reset mouse position for next frame
// EDIT : Doesn't work on Mac OS, hence the code below is a bit different from the website's
//glfwSetMousePos(1024/2, 768/2);

// Compute new orientation
horizontalAngle = 3.14f + mouseSpeed * float( 1024/2 - xpos );
verticalAngle = mouseSpeed * float( 768/2 - ypos );

关于c++ - GLFW - Mac OS X 10.7 上带有 OpenGL 相机的 glfwSetMousePos Bug,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14468039/

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