- We are talking about tech tips.
- We are talking about upcoming events that we are going to or hosting.
- We are just telling you how our day went.
My PushButton Engine Experience Week 1
My PushButton Engine Experience - Week 1
I recently took a look at a new flash game engine called PushButton Engine and really loved the architecture that it is built with. The composition architecture will allow for many plug and play components to be added to the engine as needed, as well as allow developers to monetize there work as the engine grows in popularity.
Over a series of blog post I will be trying to chronicle my experience of using the PushButton Engine coming from a flex developer who has extensive flex experience but no prior real world game development experience. I figure flash game development still uses AS3 and if you have AS3 architectural experience it shouldn't be that steep of a learning curve...
I started off by trying to create a PBE component because I figured that might be the quickest way for me to get familiar with the engine. I also started here because I need an Iso component for a game that I have plans to build for facebook later on. After two days of poking around the engine and going through the tutorials at Hubfolio, I gained enough confidence to take on the task of my first PBE component called the Isometric Component. I will release this component on the PBE component marketplace as soon as it's in a releasable state.
I got an AS3Iso scene displayed using my PushButton Engine Isometric component.
Got Iso Sorting Working on the PBE IsoComponents using the isoComp.zIndex property
Yay, my first Iso scene rendered using the PBE Isometric Component.
A Few Key Points So Far
- OnTick method is where you place your game code rather than onEnterFrame because of a number of reasons. It avoids people from hacking the time of your game and PBE has gotten around a well know elastic race track issue in flash where onEnterFrame is not always called consistently across all platforms due to different cpu speeds. The onTick() method will keep your game play consistent at all times. This is a really great feature because most game code I have looked at just uses the onEnterFrame event and thats a bit flawed.
- SpatialComponents are a nice abstraction from your components to apply physics to your components easily and I think it can also do other things like transmit positional data during MMO games.
- Next steps I will be adding a IsoSpriteSheetComponent to this library to allow for rendering animated sprites in the Isometric scene. Continuing to refine the iso sorting algorithm because it has proven to be a bit tricky.
- Goals going forward are to finish the Isometric Component with some test, and a demo, for release on the PBE marketplace. I also hope to integrate some papervision and AI pathfinding components with these Isometric Components so that you can mix IsoScenes with Papervision 3D objects. This could possibly turn into an Isometric Kit because I am also planning an Isometric Scene Editor in AIR. That will allow you to create Isometric Levels, layout the iso tiles, and also define walkable paths for the AIComponent I am working on. So I am very excited about this engine and contributing some valuable pieces to the community.