For Arcade Engine version 2.0 I took some time and thought what would be cool to have in my own projects. One of the advantages of Arcade Engine is that I use it myself in all of my multimedia projects, so I can share highly optimized methods and functions, proven to work in a multimedia context. What did I want to use next...?
Arcade Engine 1.0 featured methods to asynchronously move objects on complex paths, basic collision detection and some handy geometric functions. It was well received by developers wanting to create games and animations. I concentrated on optimizing existing handlers and functions for speed. My goal was to make everything run smoothly on my oldest machine, a G4-400 MHz. And it needed to be as stable as possible.
Version 1.5 added functions for point in polygon tests and polygon polygon collisions. That release was very well received.
For 2.0, I wanted Really Cool Stuff. I added ease in/ease out motion effects. All controls moved with Arcade Engine can use flexible acceleration and deceleration now with a single call of a handler. In addition you have access to the easing functions to set up nifty blend, transition or scrolling effects. Making your application feel organic becomes a snip.
And then there are the 3D Wireframe objects. You can display wireframes built from 3d points, rotate them along the X, Y, and Z axes and move them around. I also added isometric drawing. Enhanced line and box objects in isometric view can be easily generated for isometric games, simulations and charting. Cool, huh?
It was quite a bit of hard work to tackle the maths involved. I was really happy with the result... but... the library had grown quite a bit! I do not want to bloat other people´s stacks. :-) So I invested a while to separate the documentation from the library. Even though the lines of code in Arcade Engine almost doubled, I managed to keep the filesize close to that of the initial release. I made the docs self contained, so that they do not steal trial sessions for unregistred users, and I added quite a few nice examples. I hope you like what I came up with.
If you haven´t yet, here's your chance to try Arcade Engine now.
If you have any questions regarding the library, or are looking for more demo material I´m looking forward to see you in the forum.