在过去的几天里,我一直在使用Python 中的 Ursina 引擎,用于创建 3D 和 2D 游戏。但是我在制作 3D 游戏时一直面临这个引擎的反复出现的问题,就是我无法正确关闭窗口。发生这种情况是因为在游戏内部使用鼠标来控制玩家,所以如果我尝试转到关闭按钮,鼠标将始终停留在游戏中。解决方法是移动到另一个窗口,将鼠标放在窗口之外,然后最后点击关闭按钮。但这对用户来说是很多工作,只需关闭窗口即可。
下面是一些简单的代码来演示:
from ursina import *
from ursina.prefabs.first_person_controller import FirstPersonController
import random
game = Ursina()
class Block(Button):
def __init__(self, position = (0,0,0)):
super().__init__(parent = scene, position = position, model = 'cube', color = color.white)
for z in range(20):
for x in range(20):
block = Block(position = (x, 0, z))
player = FirstPersonController()
game.run()
我相信这个导入声明导致了这个:
from ursina.prefabs.first_person_controller import FirstPersonController
如何在 Ursina 中正确关闭窗口?