클래스의 몇 가지 변수를 조작하기 위해 키 입력을받는 데 문제가 있습니다. 아래의 정적 함수 key_callback
은 GLFW3의 최신 버전/예에 속합니다. 기본 카메라 좌표를 사용하는 렌더링 클래스가 있지만 키를 누를 때 업데이트 할 캠 및 요 - 피치 롤 변수를 연결하는 방법을 파악하는 데 문제가 있습니다.GLFW3의 다른 클래스에서 누른 키 등록
정적 변수를 내 렌더러 클래스로 옮기려고 시도했지만 캠 변수를 정적으로 만들려고했으나 아무 것도 효과가 없었습니다.
내
GLfloat camX, camY, camZ, yaw, pitch, roll;
MAIN.CPP
static void key_callback(GLFWwindow* window, int key, int scancode, int action, int mods)
{
switch (key)
{
case GLFW_KEY_ESCAPE:
glfwSetWindowShouldClose(window, GL_TRUE); <-- Works
break;
case GLFW_KEY_W: camZ += 0.1f; break; <-- What I'm trying to get
case GLFW_KEY_S: camZ -= 0.1f; break;
case GLFW_KEY_A: camX += 0.1f; break;
case GLFW_KEY_D: camX -= 0.1f; break;
case GLFW_KEY_E: yaw += 0.05f; break;
case GLFW_KEY_R: yaw -= 0.05f; break;
}
}
내 Renderer.h INT 내 주()
GLFWwindow* window;
Renderer rend;
....
glfwSetKeyCallback(window, key_callback);
rend.Initialize();
(Main loop)