我目前正在使用C ++和OpenGL创建2D游戏。我想知道是否有人能解释从鼠标图标更改当前光标的最佳方法。我正在创建一个自上而下的射击游戏,因此希望光标显示为十字准线。
答案 0 :(得分:4)
您可以使用特定于操作系统的功能手动更改鼠标指针图标(以及该图标的“热点”),也可以使用特定于操作系统的功能隐藏鼠标指针,并手动绘制使用应用程序收到的最后一个鼠标移动事件来拥有自己的图像。
或者,您可以使用跨平台的API(而不是使用特定于操作系统的函数)来为您包装这些类型的函数(SDL,SFML,Qt,仅举几例)。
OpenGL没有任何专门针对鼠标指针操作的函数 - 这是一个窗口API的东西,而不是3D图形的东西。仅OpenGL 处理绘图图形。
如果您使用的是GLUT(不是'OpenGL'而是附加库),您可以致电:
glutSetCursor(GLUT_CURSOR_NONE);