Writer, Choreographer, Game Developer

Game architecture is different

Posted on

In which I compared building a game (Asteroids) using an entity-component-system framework and an MVC framework and concluded that the entity framework was more suited to this task. I then explained why. Continue reading →

Collection: Presentations


Bugs in Vector3D and Matrix3D

Posted on

This last post about Coral is about bugs. I adapted the unit tests from Coral to test Flash's native Vector3D and Matrix3D classes. In so doing, I discovered a number of bugs in the native classes. Continue reading →

Collection: Coral, an Actionscript library for 3D Math


Performance of Coral vs Vector3D and Matrix3D

Posted on

TCoral is covered by a set of performance tests for measuring and optimizing it's performance. These tests are run using Grant Skinner's performance test suite. I adapted these tests to also apply to the native 3D geometry classes, for comparison. This article is about the results of those tests. Continue reading →

Collection: Coral, an Actionscript library for 3D Math


Architecture of Coral vs Vector3D and Matrix3D

Posted on

In this post I look at the key architectural differences between Coral and the native Vector3D and Matrix3D classes. Code architecture is an important area to me. I find well architected code is much easier to use, leading to more rapid development and fewer bugs. So good architecture in core classes like Vector3D and Matrix3D can make a lot of difference to developers. Continue reading →

Collection: Coral, an Actionscript library for 3D Math


Introducing Coral, an Actionscript library for 3D Math

Posted on

I started work on Flint Particles before Flash 10 was launched, so back then I created my own 3D mathematics classes for Flint. Recently I set about converting Flint to use the new native 3D classes that are in Flash 10. After making this change I was surprised to find two significant issues with the new code. The first was a couple of bugs in the native classes, which were not too serious since I could find a way to work around them. The second, and far more troubling issue, was a very large drop in performance - the code using the native 3D classes ran at about one quarter of the rate of the code using Flint's own 3D classes. Continue reading →

Collection: Coral, an Actionscript library for 3D Math


So Many Frameworks, So Little Time

Posted on

Once upon a time, choosing a framework for your Flash or Flex project was easy. You either used Cairngorm or you didn't. Then along came PureMVC, followed by Mate, Parsley, Robotlegs, Swiz, Sping Actionscript and many more. Getting to know all these frameworks takes a long time. Making a choice of which to use may take even longer. Continue reading →

Collection: Presentations


Open source is for life, not just for Christmas

Posted on

In which I talk about my experiences developing and managing an open source project for the previous three years, what I learnt, what I experienced, why I did and still do it, and important lessons for anyone contemplating creating or getting involved in an open source project. Continue reading →

Collection: Presentations


Re-architecting the designer-developer workflow

Posted on

In which I showed a new Flex application architecture that we are using at BrightTALK to enable the rapid development of new projects based on previously designed features. Continue reading →

Collection: Presentations