这是我用来在Ursina中的EditorCamera和关闭它之间切换的代码:
from ursina import *
app = Ursina()
def input(key):
if key == 'd':
editor_camera.enabled = False
if key == 'e':
editor_camera.enabled = True
editor_camera = EditorCamera(enabled = False)
cube = Entity(model = "cube", texture = "brick") # just to see if it works
app.run()当像这样单独应用时,它工作得很好,但是当我将相同的逻辑应用于一个更大的项目时,当启用相机(按e键)时,所有的东西都消失了,当我禁用相机(按d)时,它都会重新出现。我遗漏了什么吗?任何帮助都是非常感谢的。
发布于 2022-03-30 22:33:27
来自editor_camera.py:
def on_disable(self):
camera.editor_position = camera.position
camera.parent = camera.org_parent
camera.position = camera.org_position
camera.rotation = camera.org_rotation所以当你禁用它的时候,它会把相机放回原来的位置,这在制作编辑器时是很有用的。
如果您只是想阻止编辑器摄像机的代码运行,我建议设置editor_camera.ignore = True和update,输入代码将停止运行,但是on_disable不会被调用。或者,您可以执行editor_camera.on_disable = None,也可以手动重置位置和旋转。
https://stackoverflow.com/questions/71666551
复制相似问题