Allen Chou
I am a Computer Science student studying at DigiPen Institute of Technology, focusing on game development. I have experience in computer graphics, constriant-based rigid body physics, game engine architecture, gameplay programming, and visual feedback design. You can find out more about me at
  • Game Development
    Creating Smooth Particle Emission With Sub-Frame InterpolationCreating smooth particle emission with sub frame interpolation 400x400
    Particle effects greatly spice up game visuals. They are usually not the main focus of a game, but many games rely on particle effects to increase their visual richness. They are everywhere: dust clouds, fire, water splashes, you name it. Particle effects are usually implemented with discrete emitter movement and discrete emission "bursts". Most of the time, everything looks just fine; however, things break down when you have a fast-moving emitter and high emission rate. This is when sub-frame interpolation comes into play.Read More…
  • Code
    Thinking in Commands: Part 1 of 2Preview
    Twice a month, we revisit some of our readers’ favorite posts from throughout the history of Activetuts+. This tutorial was first published in March, 2010, and is the first part of a series. Simple, maintainable code is beautiful. However, when we have a sequences of actions that need to trigger each other, our code can get messy, making it impossible to change later. The Command Pattern keeps things clean. In this tutorial, I'll show you how to create a minimalist AS3 Command framework, capable of performing actions in sequence, in parallel, or with a delay. You'll lean how to use this framework to create a complex effect with simple and clean code.Read More…
  • Code
    Manipulating Particle Motion with Stardust Particle Engine – Part 2Preview
    This is the second part of this tutorial. I'm going to show you how to manipulate particle motion with deflectors. Read More…
  • Code
    Manipulating Particle Motion with Stardust Particle Engine – Part 1Preview
    Stardust Particle Engine provides two major approaches to freely manipulate particle motion, namely gravitational fields and deflectors. Gravitational fields are vector fields that affect a particle's acceleration, and deflectors manipulate both a particle's position and velocity. Read More…
  • Code
    Managing Sounds with CommandsPreview
    Sound management is very important for many types of Flash applications, such as interactive websites and games. As long as you want to deliver a rich interactive experience, you might want to consider making use of sound effects and background music. In this tutorial, I'll present a minimalistic sound management framework that manages sounds into sound tracks. And I'll show how to integrate the sound framework with the command framework from my previous tutorials. Read More…
  • Code
    Loading Data with CommandsPreview
    It's very common to load external data (such as SWF files) during runtime, but only when the data is completely loaded can we read or manipulate its content. Usually we have to listen to the complete event dispatched by a Loader or URLLoader object that loads the data for completion handling. Oftentimes, we write code that loads the data in one function, and write code that handles the completion of the loading in another function, but this can be improved by grouping the whole loading process together..Read More…
  • Code
    Thinking in Commands: Part 2 of 2Preview
    During this tutorial we'll further extend the command framework from the first part. We'll create a scene management framework, with easily understandable and maintainable code. Read More…
  • Code
    Create 3D Effects With the Stardust Particle EnginePreview
    In my previous tutorial Shoot Out Stars with the Stardust Particle Engine, I explained the basic workflow of Stardust. This time, we'll take things further and examine a couple of techniques for creating true 3D particle effects!Read More…
  • Code
    Shoot Out Stars with the Stardust Particle EnginePreview
    In this tutorial I will introduce to you the Stardust Particle Engine. First I'm going to show you how to set up Stardust, and then I'll cover the basic Stardust class responsibilities and how they collaborate together to make Stardust work as a whole. Next, we will look at a Stardust's general workflow and get down to creating a particle effect with stars shooting out from the mouse cursor; the stars will slow down gradually, grow larger after birth, and shrink when dying. Finally, I'll demonstrate the flexibility of Stardust by creating several variations from the already complete example, including using animated movie clips as particles, variable particle simulation timescale, and shooting out display objects of different classes from a single emitter. Read More…