This guide is a work in progress and will continually evolve to incorporate new game development content. Currently the guide includes some topic headings with little content, indicating the areas we are most interested in addressing next.
These articles illustrate techniques and provide advice on the craft of programming ActionScript as it applies to gaming. Covering a wide range of fundamentals from Math to Concurrency, these articles are the foundation upon which the remaining topics build.
For more detailed information on ActionScript (from basic syntax to advanced OOP techniques), check out the Learning ActionScript content. Full ActionScript API documentation is in the ActionScript 3.0 Reference.
The Stage3D API delivers blazing fast 2D and 3D graphics in the Flash runtimes using a fully accelerated GPU rendering pipeline. The hardware accelerated programmable shader architecture of Stage3D allows your game to leverage the power of OpenGL and DirectX graphics across web browsers (including Chrome, Firefox, Internet Explorer, and Safari) and games on iOS, Android, Windows, and Mac.
Full Stage3D API documentation is in the ActionScript 3.0 Reference.
To quickly leverage the power of Stage3D hardware acceleration, pick one of the many excellent frameworks optimized for the 2D or 3D game you want to build.
Flash Player and Adobe AIR contain an adept and impressive virtual machine capable of executing well-crafted code with remarkable speed. These articles cover the techniques and requisite information to generate optimal code, ensuring your game provides the best possible experience to your end user.
Buggy, unpredictable software immediately destroys the best design and the most innovative game play in the gamer's mind. Not only will you lose sales due to software defects, you waste your time while you attempt to debug, correct and hopefully fix the issues. This section covers the techniques and tools you can use to ensure software quality and deliver a superb experience to your end user.
The average developer spends more time debugging than on any other aspect of software development. This section teaches you the tools and techniques to do so efficiently and effectively.
You've created an interesting and innovative game and now you want to share it with others. The articles in this section cover the details of moving from development to release and specifically how to deploy in the Flash Player, AIR for desktop, AIR for mobile, as well as the market specific details for mobile deployment.
Targeting today’s mobile devices provides an unprecedented reach and opportunity for the game developer. However, the rapidly changing and fragmented world of mobile also provides a significant number of challenges. In this section you will find advice on dealing with the complexities and the difference between this world and the deskop as well as specific advice on handling mobile-only features.
Native extensions are your link between the low-level functionality of a device and the Adobe AIR Runtime. Mastering the techniques covered in this section will give you the ability to bridge any gaps between the hardware and your application proving a complete experience for your users.
The Native Extensions page lists some of the available commercial and open source ANEs.
Adobe Gaming SDK iOS native extensions documentation
Networking opens your game to the world, allowing interaction with players around the globe and the ability to form communities that interact and communicate in real time. Unfortunately, being open to the world also means you are open to every malicious gamer who wants to cheat his or her way to the top or destroy your creation. The articles in this section give you the tools to interact with the world via networking and the knowledge to keep your creations as safe as possible from potential threats.
Postmortems cover the details of a project, including what went wrong and what went right. This section will give you insight into the process of game development, helping you navigate around mistakes and make choices that might improve the quality of your game, shorten its time to market and help you get there avoiding some of the frustration.