c++ - 在 C++ 游戏中更改光标

标签 c++ opengl graphics 2d 2d-games

我目前正在使用 C++ 和 OpenGL 创建一个 2D 游戏。我想知道是否有人可以解释从鼠标图标更改当前光标的最佳方法。我正在创建一个自上而下的射击游戏,因此希望将光标显示为十字准线。

最佳答案

您可以使用特定于操作系统的功能手动更改鼠标指针图标(以及该图标的“热点”),也可以使用特定于操作系统的功能隐藏鼠标指针,并手动绘制您的使用您的应用程序收到的最后一次鼠标移动事件拥有自己的图像。

或者,您可以使用跨平台 API 为您包装这些类型的函数(SDL、SFML、Qt 等),而不是使用特定于操作系统的函数。

OpenGL 没有任何专门对鼠标指针进行操作的函数——那是窗口 API 的东西,而不是 3D 图形的东西。 OpenGL 处理图形绘制。

如果您使用的是 GLUT(不是“OpenGL”而是一个附加库),您可以调用:

glutSetCursor(GLUT_CURSOR_NONE);

关于c++ - 在 C++ 游戏中更改光标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22276848/

相关文章:

c++ - 如何将 vector 传递给 function() 并将 vector [array]返回给 main function()

c++ - QTimer 超时不会在单元测试中触发

c++ - 如何构建 OpenGL + GLEW + GLFW 程序,以便在带有 exe 的文件夹中不需要 glfw3.dll?

php - 方形缩略图前进

math - 颜色修改功能的好引用?

c++ - 为什么我的构造函数允许使用临时对象调用非 const 引用作为参数?

c++ - SFINAE 专业类(class)

c - 死亡时慢慢变黑

c++ - 从 4 个点计算旋转矩阵

windows - 在 Windows 中生成专业图表