single step game engine (pause, resume)

These things in Panda3D happen via the task manager, and you can stop and start tasks at your leisure, even take control over when the task manager happens. The default render task has a sort value of 50, so if you want something to happen just after rendering, you can add it as a task give it a sort value of 51.

Yes, you can run Panda3D without a display. Just use windowType=‘none’ to the ShowBase constructor or set ‘window-type none’ as a config prc setting.