beehave
beehave copied to clipboard
Add "Custom" option to Process Thread
enum ProcessThread { IDLE, PHYSICS, CUSTOM }
I then used this CUSTOM option for finer control via a global script would call x amount of the behaviorTrees each frame. This helped immensely with performance for 50+ nav_agents with skeleton3D animations/sounds/hitboxes. You could have that value be a curve that reacts to FPS or possibly another behavior tree that manages the update rate based on distance.
Interesting idea. Just to get this right: custom = off? That's usually what the disabled property on nodes is for (to disable automatic processing)