Ursina:如何为blender对象添加网格碰撞器?

2024-09-27 21:23:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用乌西娜和Python做一个游戏。为此,我想在Blender中创建一个小地形。如果我禁用碰撞,网格将正确显示,但如果我尝试启用它,游戏会给我一个错误,网格没有“网格碰撞器”。我不知道如何添加一个

错误:

Traceback (most recent call last):
  File "c:\Users\email\Desktop\Iwas3dSchosch\main.py", line 8, in <module>
    level.mesh_collider.collider = 'mesh'
AttributeError: 'Entity' object has no attribute 'mesh_collider'

对象的代码:

level = load_blender_scene('map_data')
t = time.time()
level.mesh_collider.collider = 'mesh'
level.mesh_collider.visible = True

Tags: 网格游戏mosttime错误calllevelfile
1条回答
网友
1楼 · 发布于 2024-09-27 21:23:51

这里有两个问题,第一个是继承,网格导入器外壳没有属性,它都是函数。您要做的是创建一个Entity()实例调用,并将网格和碰撞器参数传入其中。 第二个问题是,当Load\u model()是您想要的时,您正在使用Load\u blender\u scene()

level = load_model('map_data')
# t = time.time()
Entity(model=level, collider=level, collision=True)

相关问题 更多 >

    热门问题