I am currently working on the Mac release. It is a little bit more work than I anticipated. There are some minor issues like widgets not retaining focus, popup menus functioning slightly different, etc. Investigating why things behave different in different platforms is time consuming. I am using Wing IDE and it is helping me a lot debugging. If you haven't tried it yet give it a shot. Not being an experienced Mac developer doesn't help but I should be able to speed up the pace gradually. Of course watching FIBA 2010 is not helping either. I am hoping that creating an installer for Mac is not going to be a major issue but we shall see. By the end of September (more realistically in October) I should be able to start public testing. If you would like to become a beta tester please let me know.
After the Mac release I will add support for Box2D version 2.1. This should be fairly straight forward. After that I will add "Scenes" feature. Currently there is only one scene and this is shown under "Sytstem" in object tree. Scenes can be different things in different context. For example, if you are developing a game then you can use them for different levels, or different sections in the same level. When you climb down a pipe in a Mario game you go to a different place; this would be modeled with a different scene in Mekanimo. "Go to a new scene" will be an action that can be assigned to behaviors. I may be able to add some transition effects like fade-in, slide from right to left, grow from the center, etc. In Box2D terms, each scene will hold a separate world. I haven't decided if I should let two scenes run simultaneously or not. I can think of several scenarios that could use such a feature but have no idea how difficult the implementation would be. Naming conventions is another issue. Should each scene have their own name-space or should they share a common name-space? I can see advantages and disadvantages for both cases. Haven't decided yet.
I have already implemented several widgets like buttons, labels etc. I will add a user interface for adding these GUI widgets to a scene. These will help creating complete games. Speaking of games, I will also add a "Game" object with support for displaying and keeping track of common game elements like score, ammo, health, etc. Game object will hold levels as well. You will be able to manipulate the Game object via the object tree. Once you have a complete game you will be able to export this game as a windows/mac executable or HTML5/Android executable. I am hoping to be able to create some simple but complete games in a matter of hours if not minutes. Sounds awesome eh?
This will conclude the second phase of Mekanimo development. Maybe in another post I will talk about what I am planning for the third phase.
Hey Fahri,
ReplyDeleteGreat work on Mekanimo and congrats! on the release of the final version. I see that you're trying to cover a lot of features which is nice :D.
Where is the XML implementation on the pipepile :(. Just messing, I know that you're quite busy. Hopefully, is somewhere.
I have been using Mekanimo for a while and I got to say, it's quite stable.
There are many other features that I have not mentioned either. Programmable sound, several AI routines, procedural content generation etc. XML will be done soon too.
ReplyDeleteGreat news!
ReplyDeleteLet me know if you want me to test any experimental functions.
Cheers
Any update on the release of the mac version?
ReplyDelete