GLFWマウスの取り扱い

glfw-mouse.png
q?_encoding=UTF8&ASIN=1849692033&Format=_SL160_&ID=AsinImage&MarketPlace=JP&ServiceVersion=20070822&WS=1&tag=lifeiscool01-22….amazonでGLFWで検索して唯一引っかかる本
int glfwGetMouseButton (GLFWwindow *window, int button) どのマウスボタンが押されているかチェックする
void glfwGetCursorPos (GLFWwindow *window, double *xpos, double *ypos) マウスポインタがどこにいるか取得する

コールバック登録用の関数

GLFWmousebuttonfun glfwSetMouseButtonCallback (GLFWwindow *window, GLFWmousebuttonfun cbfun) マウスのボタンが押された時のコールバックを登録する
GLFWcursorposfun glfwSetCursorPosCallback (GLFWwindow *window, GLFWcursorposfun cbfun) マウスのカーソルが動いた時のコールバック
GLFWcursorenterfun glfwSetCursorEnterCallback (GLFWwindow *window, GLFWcursorenterfun cbfun) マウスカーソルがウィンドウに入った時のコールバック
GLFWscrollfun glfwSetScrollCallback (GLFWwindow *window, GLFWscrollfun cbfun) マウスホイールを回した時のコールバック

コールバック関数に登録すべき関数の形

glfwSetMouseButtonCallback

 void (GLFWwindow *window, int button, int action, int mods){}

This is the function signature for mouse button callback functions.

Parameters

window The window that received the event.
button The mouse button that was pressed or released.
action One of GLFW_PRESS or GLFW_RELEASE.
mods Bit field describing which modifier keys were held down.

See Also
glfwSetMouseButtonCallback

マウスボタン

#define GLFW_MOUSE_BUTTON_1 0
#define GLFW_MOUSE_BUTTON_2 1
#define GLFW_MOUSE_BUTTON_3 2
#define GLFW_MOUSE_BUTTON_4 3
#define GLFW_MOUSE_BUTTON_5 4
#define GLFW_MOUSE_BUTTON_6 5
#define GLFW_MOUSE_BUTTON_7 6
#define GLFW_MOUSE_BUTTON_8 7
#define GLFW_MOUSE_BUTTON_LAST GLFW_MOUSE_BUTTON_8
#define GLFW_MOUSE_BUTTON_LEFT GLFW_MOUSE_BUTTON_1
#define GLFW_MOUSE_BUTTON_RIGHT GLFW_MOUSE_BUTTON_2
#define GLFW_MOUSE_BUTTON_MIDDLE GLFW_MOUSE_BUTTON_3

Mod

#define GLFW_MOD_SHIFT 0x0001
#define GLFW_MOD_CONTROL 0x0002
#define GLFW_MOD_ALT 0x0004
#define GLFW_MOD_SUPER 0x0008

glfwSetCursorPosCallback

void(GLFWwindow *, double xpos, double ypos)

This is the function signature for cursor position callback functions.

Parameters
[in] window The window that received the event.
[in] xpos The new x-coordinate, in screen coordinates, of the cursor.
[in] ypos The new y-coordinate, in screen coordinates, of the cursor.
See Also

サポートサイト Wikidot.com