OpenRA/OpenRA — pull request #3348 by pchote (2013-05-28 11:22:11+00:00)
Title: Renderer refactoring - Traits

This should be the last of the major refactoring patches preparing for voxel units.
The RenderSimple trait is split into three (RenderSimple, RenderSprites, BodyOrientation) to support sprite additions (smoke, muzzleflash, etc) on voxel units, and voxel addons on sprite units (titan barrel).

The turret behavior and sequence definitions have been modified to support the giant walking edge-case that is the Titan (legs with 8 facings, turret with 32 facings, voxel barrel, clockwise sprite orientation).

There isn't much custom behavior left in RenderSimple/RenderUnit/RenderBuilding. A future patch should look into unifying these (WithBody:?) and clean up the mess of code relating to RenderSprites.anims.