0
在我當前的LWJGL應用程序中,我使用了GLFW窗口輸入處理程序,我已經建立了一個名爲Keyboard.java的類來處理擴展GLFWKeyCallback。我已經正確設置了我的鍵盤輸入類,但是當我點擊某個鍵時,如果我不點擊(如果速度夠快),那麼它會註冊爲多次點擊。我已經提出下面的一些文檔:GLFW鍵盤輸入寄存器作爲多個點擊
鍵盤類
public class Keyboard extends GLFWKeyCallback {
//Variables
public static boolean keys[] = new boolean[65536];
@Override
public void invoke(long window, int key, int scancode, int action, int mods) {
keys[key] = action == GLFW_PRESS;
}
}
實施
public static void handleInput() {
if (Keyboard.keys[GLFW_KEY_SPACE]) {
System.out.println("Space");
glfwPollEvents();
}
}
上述方法在主遊戲循環實現,並且被調用一次一幀。
結果
初始化LWJGL版本:3.1.2建立29
空間
空間
空間
空間
以上:「S每當我點擊空間時應該輸出「節奏」,但是當我點擊它時比較快,然後我得到了許多「空間」的上述結果。
結論:無論您持有多久,點擊空間是否可以僅註冊一次?謝謝
感謝您的回覆,但我已經設法解決這個問題。然而,這是一個更容易的方法。謝謝。 –