Archive for September, 2009

Saturday, September 26th, 2009

Electronic Arts is using Unity 3D to develop Tiger Woods Online. The game is currently in beta. It was announced that they were using the engine in June on their blog but only on the reposted version here not the original post where the engine was just deemed “new technology”.

This is a major shift in the game industry and how it is being expanded into online properties that rival or better the console and desktop versions through online communities.  Quake Live from id software uses their own system that wraps existing games (originally developed by Gaim Theory then bought by id Software) and instant action technology from garage games that runs instant action.  All these systems have provided us browser based triple AAA style gaming fun.  It looks like that movement will continue as more and more game companies and publishers see the valid capabilities of Unity 3D to deliver when you need really deeply immersive 3d experiences in the browser. Also other systems like Torque 3D, Quake Live technology and more will be seeing this trend continue when it comes to games online. It is also becoming a choice for online web based 3d MMOs such as Fusion Fall and Marvel Super Hero Squad.

Wednesday, September 9th, 2009

Claus Wahlers has a great post on some lower level Flash handling for shapes.  He posts about a tool called as3swf which helps to look into the raw shapes and vector drawing calls in the flash engine.

The output of this tool gives the raw machine code/assembly like procedural output that is very similar to other rendering engines. It actually makes me think of OpenGL a bit in the output switch based, procedural flow except this if for vector drawing rather than raster.

Sample output

[83:DefineShape4] ID: 1
  FillStyles:
    [1] [SWFFillStyle] Type: 0 (solid), Color: 666666
  LineStyles:
    [1] [SWFLineStyle2] Width: 200, Color: ff0000
  ShapeRecords:
    [SWFShapeRecordStyleChange] MoveTo: 400,400, FillStyle1: 1, LineStyle: 1
    [SWFShapeRecordStraightEdge] Horizontal: 2000
    [SWFShapeRecordStraightEdge] Vertical: 2000
    [SWFShapeRecordStraightEdge] Horizontal: -2000
    [SWFShapeRecordStraightEdge] Vertical: -2000
    [SWFShapeRecordEnd]

It is always good to know what is going on in lower levels to better code for projects that perform well.  Another great post on this is the Elastic Racetrack of the AS3 and AVM2 virtual machine which describes how the AVM2 handles drawing those low level shape calls in addition to handling script.