Notify plugins on certain events (e.g. body added).

This also adds a periodic tick function to plugins, giving them periodically control over the simulation thread, even when the simulation is paused.
This commit is contained in:
Tigran Gasparian
2018-07-24 14:12:16 +02:00
parent 0e1dce41ea
commit c59afb88c4
11 changed files with 252 additions and 28 deletions

View File

@@ -18,7 +18,10 @@ class b3PluginManager
void addEvents(const struct b3VRControllerEvent* vrControllerEvents, int numVRControllerEvents, const struct b3KeyboardEvent* keyEvents, int numKeyEvents, const struct b3MouseEvent* mouseEvents, int numMouseEvents);
void clearEvents();
void addNotification(const struct b3Notification& notification);
void tickPlugins(double timeStep, bool isPreTick);
void tickPlugins();
int registerStaticLinkedPlugin(const char* pluginPath, PFN_INIT initFunc,PFN_EXIT exitFunc, PFN_EXECUTE executeCommandFunc, PFN_TICK preTickFunc, PFN_TICK postTickFunc, PFN_GET_RENDER_INTERFACE getRendererFunc);