by Christer Kaitila

Christer Kaitila


6 December 2011


Prerequisite knowledge

This book assumes that you have some programming experience with ActionScript 3.

User level


Adobe Flash Player 11 introduces a new architecture for hardware-accelerated graphics rendering called Stage3D ("Molehill"). This set of 3D APIs brings 3D to the Adobe Flash Platform. Since this is a completely new technology, there have been few resources to get you acquainted with this revolutionary platform, until now.
Adobe Flash Player 11 Stage3D (Molehill) Game Programming Beginner's Guide will show you how to make your very own next-generation 3D games in Flash. If you've ever dreamed of writing your own console-style 3D game in Flash, get ready to be blown away by the hardware accelerated power of Stage3D. This book will lead you step-by-step through the process of programming a 3D game in ActionScript 3 using this new technology. Filled with examples, pictures, and source code, this practical and fun-to-read guide will benefit both 3D programming beginners and expert game developers alike.
Starting with simple tasks like setting up Flash to render a simple 3D shape, each chapter presents a deeper and more complete video game as a sample project. Right from a simple tech demo, your game will grow to become a finished product—your very own playable 3D game filled with animation, special effects, sounds, and tons of action. The goal of this book is to teach you how to program a complete game in Molehill that has a beginning, middle, and game over.
As you progress further into your epic quest, you will learn all sorts of useful tricks such as ways to create eye-catching special effects using textures, special blend modes for transparent particle systems, fantastic vertex and fragment programs that are used to craft beautiful shaders, and much more. You will learn how to upload the geometry of your 3D models to video RAM for ultra-fast rendering. You will dive into the magical art of Adobe Graphics Assembly Language (AGAL) shader programming. You will learn optimization tricks to achieve blazingly fast frame rates even at full-screen resolutions. With each chapter, you will "level up" your game programming skills, earning the title of Molehill Master. You will be able to honestly call yourself a 3D game programmer.
This book is written for beginners by a veteran game developer. It will become your trusty companion filled with the knowledge you need to make your very own 3D games in Flash.
Render state changes

Figure 1. Render state changes


What you will learn from this book
  • Animate complex 3D scenes in Flash
  • Initialize the Molehill graphics engine enabling hardware 3D acceleration
  • Overlay 2D Flash on top of your 3D scenes for beautiful user interfaces
  • Render splendid textures for eye-catching visuals
  • Upload 3D model geometry for in-game items, enemies, terrain, and levels
  • Program incredible-looking shaders in AGAL that run incredibly fast
  • Make your own special effects like explosions, sparks, and magic
  • Write event handlers and timers that control the action
  • Track player movements, health, and the game state
  • Trigger game events, detect collisions, and control the game
  • Compile your project to a SWF that you can put on a web page
Written in an informal and friendly manner, the style and approach of this book will take you on an exciting adventure. Piece by piece, detailed examples help you along the way by providing real-world game code required to make a complete 3D video game. Each chapter builds upon the experience and achievements earned in the last, culminating in the ultimate prize—your game!
Whom this book is written for
If you ever wanted to make your own 3D game in Flash, then this book is for you. It's a valuable introduction to 3D game programming in Flash Player 11 for complete beginners. You do not need to know anything about Stage3D/Molehill or Flash Player 11 in order to take advantage of the examples in this book. This book assumes that you have programming experience in ActionScript 3.
Visit Packt Publishing's website to learn more about or purchase the book.