0
我对python和OpenGL仍然很陌生。我写了一个简短的代码来移动汽车穿过z轴,here是我完全写的代码,如果需要在Python中暂停并重新启动游戏(opengl)
我想要做的是当用户点击“p”时暂停游戏,重新启动时“r”和退出程序时,“q”退出...完美的作品,但我也不能重新启动,也没有暂停比赛,尽管我所有的试验,这里是我写的要考虑所有情况下,部分:
def keyboard (key,x,y):
if key == b"q" :
sys.exit(0)
if key == b"r" :
restart_program()
if key == b"p":
pause()
PS :我尝试了Pygame自由,但它不能正常工作
任何帮助?!
这是一个很好的教程,帮助我与这个http://gamedevgeek.com/tutorials/managing-game-states-in-c/。基本上,你将所有的游戏逻辑包装到一个GameState对象中,然后你的“游戏”成为一个游戏状态处理程序。当你想暂停时,你的GameState会将控制权交给一个MenuState,导致GameState停止更新。 – Will
我的答案中的代码意味着要成为一个模板,您将不得不将所有当前的更新和绘图代码移动到名为'UpdateAllTheThings'的函数中*并且*您必须让所有移动的零件移动一定数量的sclaes ('glTranslatef(-2.5 + mov,-0.5,0.5 * 2.5)'=>'glTranslatef(-2.5+(mov * time_elapsed), - 0.5,0.5 * 2.5)')。这样,传递0将防止移动,并且传递一个值(毫秒或其他)将随着时间的推移而缩放自上次更新以来的移动。 – Will