Uploaded May 2019 | Updated September 2026, 2 hours ago
This engine aims to allow the user to visualise various AI behaviour types - how they interact with their environment, what is used in their "decision making", and to test adjustments to those AI in real-time.
This video demonstrates the following capabilities of the visualisation tool:
- The various steering forces can be displayed and / or activated by clicking on the force (for display) or its toggle box (for activation)
- The Seek, Arrive, and Pursue behaviours are demonstrated
Please find the current codebase at github.com/s0lly/Steering-Behaviours - but note that this is still a work in progress.
Hopefully this project will allow for the quick creation of multiple AI types by allowing live-editing of various parameters, and give a very deep sense into how the various AIs would respond to different stimuli.
Please let me know how if you have any suggestions on things to add!
Acknowledgements:
This was made using the Chili Framework: http://wiki.planetchili.net/index.php... - thanks Chili!
The ideas of using steering behaviours came about while reading Mat Buckland's book "Programming Game AI by Example", which has proved invaluable in building this visualisation.
Music by Eric Skiff, intro music song "All of Us", main music song "We're the Resistors" (Available at EricSkiff.com/music)
This engine aims to allow the user to visualise various AI behaviour types - how they interact with their environment, what is used in their "decision making", and to test adjustments to those AI in real-time.
This video demonstrates the following capabilities of the visualisation tool:
- The various steering forces can be displayed and / or activated by clicking on the force (for display) or its toggle box (for activation)
- The Seek, Arrive, and Pursue behaviours are demonstrated
Please find the current codebase at github.com/s0lly/Steering-Behaviours - but note that this is still a work in progress.
Hopefully this project will allow for the quick creation of multiple AI types by allowing live-editing of various parameters, and give a very deep sense into how the various AIs would respond to different stimuli.
Please let me know how if you have any suggestions on things to add!
Acknowledgements:
This was made using the Chili Framework: http://wiki.planetchili.net/index.php... - thanks Chili!
The ideas of using steering behaviours came about while reading Mat Buckland's book "Programming Game AI by Example", which has proved invaluable in building this visualisation.
Music by Eric Skiff, intro music song "All of Us", main music song "We're the Resistors" (Available at EricSkiff.com/music)







![2D Game Engine in C++: [3] Camera Rotation / Zooming
This video shows camera rotation and scaling.
The game now simply calls one function to draw sprites, where game objects rotation, scaling, and translation is taken into account as well as camera rotation, zoom, and location.
This should dramatically help coding up a wide array of 2D games, as a good chunk of graphics logic will already be allowed for.
Next, Ill look to draw sprites at different depths, to give a mock 3D effect to the drawing routine.
I will release all code on GitHub once Ive finalised the engine - and have nice looking code to boot!
Using the Chili Framework: http://wiki.planetchili.net/index.php... - thanks Chili! 2D Game Engine in C++: [3] Camera Rotation / Zooming](https://i.ytimg.com/vi/oP6FNbgRLHg/mqdefault.jpg)


