Friday, 5 March 2010

Engine4.00 released

Collision system coming forward, but needed to release this due to some big interesting improvements.

One note of interest ScaleFactors, for tileSheets and sprite layers cannot be scaled further that 2.0f, I need to investigate this a lot further.

Bugs fixed in this release
==========================
none

Changes in this release
=======================

Bin (internal object)
---
altered - simplified bin management so should see a significant speed up (I noticed testing code go from 30fps to 45fps with 1000 large rotating sprites all collision enabled)


EngineManager
-------------
added - BinResolution, this allows you to change the collision detection bin grid size, under the correct conditions changing this value may significantly speed up or slow down the collision system.

altered - OnScreen() internal methods, now take into account sprites layer scaling when determining visibilty.

added - more comprehensive debug output for layers and spritelayers and better organisation of this information. also added some control combinations for dynamically scrolling the display output.

SHIFT and - (not the numpad ones) to scroll the display upwards (so you can see more)
SHIFT and + (not the numpad ones) to scroll the display downwards (so you can move back to the top)
SHIFT and < to scroll the display Left. SHIFT and > to scroll the display Right


LayerManager
------------
added - GetLayers(), returns the list of all the TileSheets currently being managed by the LayerManager, these can then be looped through for any special processing you want to do.


Sprite
------
Lot's of work in preparation for dynamic collision engine, now tracking rotated sprites properly (collision not active properly for them yet)

re-written - Update(), made some significant speed ups and removed lots of uneccesary code ready for new collision system.

Some refactoring work done, to remove some parameter passing for some speed ups

added - Manual(), marks a sprite as static, so no movement logic, animation, history and timeractions are applied

added - ManualWithUpdates(), marks a sprite as static so no movement logic is applied, animation history and timeractions are still applied

added - Automatic(), marks a sprite as a normal updating sprite.


TileSheet
---------
added - Wrap, when set to true (the default) the tile sheet will start drawing tiles from the left or top if we run out of tiles on the bottom or right. This will effect scrolling giving you just the tile sheet as you defined it. The default operates as it did before.

No comments:

Post a Comment