我遇到了LWJGL和光滑的问题。我试图做的是显示一定数量的文本,当按下按钮时(在这种情况下它将返回),屏幕清除并显示新文本。我目前正在使用此代码
public void text() {
GL11.glClear(GL11.GL_COLOR_BUFFER_BIT);
Color.white.bind;
font.drawString(0, 0, "text");
while (Keyboard.isKeyDown(Keyboard.KEY_RETURN)) {
GL11.glClear(GL11.GL_COLOR_BUFFER_BIT);
font.drawString(0, 0, "text (again)");
}
}
//so on an so forth
但问题在于,当我放入另外一个时,它会创建一个死循环。 有更好的方法吗?我已经尝试了If语句,但刚刚使它出现然后恢复到第一个字符串。
答案 0 :(得分:0)
在我看来,发生的事情是它重复执行,而你想要做的就是执行一次。代码将是:
while(Keyboard.next()) {
if(Keyboard.getEventKeyState()) {
switch(Keyboard.getEventKey()) {
case Keyboard.KEY_RETURN:
GL11.glClear(GL_COLOR_BUFFER_BIT);
font.drawString(0, 0, "text (again)");
break;
}
}
}