Saturday, November 30, 2013

New darkness generator

Main improvements are new spatial partitioning, new darkness generator and the decoupling of the 2d camera.

Binaries and sources can be downloaded at the moment from SugarSync.

So what's new?

BB)
  • Buffer.Use() was used too early causing errors in 3d stuff
  • New class TCamera2D, it has been decoupled from TLayer.
  • TEnts new overloaded Load() method for streams
  • Layer and Sprites now can use the 2d camera
  • Polygons can now be set to the sortered buffer list
  • Removed any coordinate information from TLayer 
  • Sprites have a new property called ParallaxId, which can be set manually or automatically by the rendering layer 
  • Class TCollisionMatridx, implements spacial partitioning for easy retrieving of sprites at a certain position
  • Fixed rare memory errors in TSpriteEngine.Render() when killing entities
  • TLaser did not call Clear() before being freed (since is not a TSprite descendant) creating some memory leaks
  • Fixed a bug when a sprite had shadows and index was 0 (-0 = 0)
  • Tiles in maps can cast shadows
  • Engine 3d code cleaned a bit (long time...)
  • TLayer.ScanAttributes can be now set to a certain window (so not the whole map has to be scanned)
  • TSurface.Blit() heavily improved since it is the base for darkness
  • New TMem.Move32()

HBF)
  • Hero dies in a different way (not sure if I like it)
  • Fixed error in AdjustToLeftTile()
  • Stalactite now explodes when collisioning with shield (very realistic...)
  • Cannon is now set to mechanic
  • Fixed minor bug when pausing Spikeball
  • New backgrounds
  • Droid has a new sound 
  • Some 3d stuff is now shown in menus
  • All necessary changes for using new 2d camera were applied
  • VerticalVelocity renamed to Impulse
  • Explosion does not longer kill hero
  • Fixed bug with fishes that were facing none status
  • Fireballs in fire wheels are no longer TGameSprite but TNonGravityEnemy
  • Tiles now cast shadows
  • Fixed the spikes collisions (not working 100% yet)
  • Fixed a bug where game could not be continued more than once in the same level
  • Ending menu loads resources when needed
  • TBird was immortal...
  • Darkness is now generated in real time, showing also light emitted from different objects (candles, fire, etc)
  • New attribute ATTR_FIRE (serve as dying flag and light emitter for darkness)

Editor)
  • Updated with camera stuff

Demos)
  • Code cleaned a bit

This is the new darkness generator



No comments:

Post a Comment