bitbrain / beehave

🐝 behavior tree AI for Godot Engine
https://bitbra.in/beehave
MIT License
1.99k stars 122 forks source link

Optional time slicing system #358

Open nathanjf opened 1 month ago

nathanjf commented 1 month ago

Rational

This pull request is a proof of concept for a opt-in time slicing system. This is useful for games with large amounts of entities using beehave trees at once or simply ensuring a fixed amount of updates happen each frame on lower end systems such as mobile. Both these cases aren't covered by changing the tick rate or can be solved better through this implementation. Tick rate alone forces trees to update slower even when there is not any load and leaves the potential for excessive updates to happen on an individual frame.

This should be a part of beehave rather than left up to the user because it requires directly modifying the tick method.

Changes