Wenn du wissen möchtest, wohin der Benutzer geklickt hat musst du auch auf Mausklick Events achten und die entsprechende Callback Funktion (glfwSetMouseButtonCallback) setzen.
#include <GLFW/glfw3.h>
void mouse_callback(GLFWwindow* window, double xpos, double ypos)
{
// Hier kannst du Code einfügen, um die Mausposition zu verarbeiten
// xpos und ypos sind die Bildschirmkoordinaten der Maus
}
void mouse_button_callback(GLFWwindow* window, int button, int action, int mods)
{
if (action == GLFW_PRESS)
{
double xpos, ypos;
glfwGetCursorPos(window, &xpos, &ypos);
// Hier kannst du Code einfügen, um mit dem Klick umzugehen
// xpos und ypos sind die Bildschirmkoordinaten der Maus
}
}
int main()
{
if (!glfwInit())
return -1;
GLFWwindow* window = glfwCreateWindow(800, 600, "Mausposition", NULL, NULL);
if (!window)
{
glfwTerminate();
return -1;
}
// Setze die Callback-Funktion für die Mausposition
glfwSetCursorPosCallback(window, mouse_callback);
// Setze die Callback-Funktion für Mausklicks
glfwSetMouseButtonCallback(window, mouse_button_callback);
while (!glfwWindowShouldClose(window))
{
// Zeichne hier
glfwSwapBuffers(window);
glfwPollEvents();
}
glfwTerminate();
return 0;
}