2017-05-17 608 views
1

我的问题是,是否有可能在没有屏幕的情况下运行一个Pymunk模拟来弹出它?可能在没有屏幕的情况下运行Pymunk模拟(在没有真正看到它的情况下)?

我正在研究一个涉及到Pymunk和Pygame的研究项目。目标是开发一个能够推断出涉及Pymunk空间内物体和代理的物理仿真的特定属性的代理。

该项目的一部分需要比较许多不同的模拟和屏幕弹出的事实,所以我可以查看每个模拟导致问题花费太多时间(因为我必须查看每个SIM卡才能收集来自它的数据)。

我想基本上尽可能快地在后台运行每个SIM来收集物理数据。我不需要在某些点实际可视化模拟。

让我知道我是否足够清楚,或者这是重复的。虽然,我在这里搜索了一个答案,但我还没有找到答案。

回答

1

Pymunk本身并不依赖任何可视化。您可以使用space.step方法向前移动仿真,并且可以根据需要多次调用仿真,例如,使用dt为0.1的1000次将仿真向前移动100个单位(秒)。

如果您想查看某些内容,可以选择读出状态并在此时绘制该状态。

与pymunk提供的pygame集成仅适用于那些想要快速简便地在屏幕上显示内容的用户。如果你不想要任何东西,你绝对不需要使用它。

要知道,这是不符合0.01 DT调用space.step 100倍,为1的DT调用它同样

+0

非常感谢你(会给出一个更准确的模拟后)许多。我只是删除了Pygame的屏幕对象和Pymunk的DrawOptions()函数的所有变量和依赖关系。所有的模拟人生都在后面跑步。为了加快所花的时间,我只是增加了每个时钟周期传递多少时间。 – Skittles

相关问题