News Story

Asteroids ship

RBGL Sprites v1.1 Released

Published at 3:07am on 29 Aug 2008

We've just released RBGL Sprites 1.1, a major update to our open source 2D game engine for REALbasic.

RBGLSprites 1.1 is a massive update to the RBGLSprites 2D game library for REALbasic, including a number of highly requested features such as pixel-perfect collision detection and sprite rotation as well as numerous optimisations and bug fixes. The complete list of new features is given below:

  • RBGLSprites now have an Orientation property that can be used to rotate them to an arbitrary angle.
  • RBGLSprites now have pixel-perfect collision detection, even when rotated.
  • If StretchBackdrop property is set on RBGLSpriteSurface the backdrop image will stretch to fill the SpriteSurface and will not scroll.
  • Added NextFrame and Collision events to the RBGLSprite class. The events are called automatically by the RBGLSPriteSurface prior to its own equivalents. You can use these events to manage your sprites in a more object-oriented way.
  • Added dt parameter to NextFrame event. This represents the number of seconds since the last frame was drawn (hopefully < 1) and can be used for more accurate animation than relying on the FrameSpeed setting.
  • If the sprite priority is changed after attaching it to the RBGLSpriteSurface, the drawing order is now updated accordingly.
  • Replaced linear priority sorting algorithm with a faster binary insertion sort.
  • Fixed a bug in priority sorting algorithm that meant it didn't actually work.
  • Added Centered property to RBGLSprite, false by default. If set, the sprite image with be centered on its coordinates instead of the coordinates representing the top left corner.
  • Added PaintOverlay event to RBGLSpriteSurface. This event is ideal for drawing head up displays or special effects on top of your sprites.
  • Added Clear method to RBGLSpriteSurface which removes all sprites.
  • Added SpriteCount property to RBGLSpriteSurface.
  • Fixed a memory leak that occured when removing multiple sprites from the surface during a frame update.
  • You can now take a screenshot of all or part of the RBGLSpriteSurface using the GetPicture function inherited from RBGLCanvas.
  • Updated RBGL library to version 1.5.

In addition to the legacy porting examples, RBGLSprites now includes Asteroids, a brand new game demo written from scratch to take full advantage of the RBGLSprites capabilities. Asteroids features huge, alpha-blended sprites, particle-based explosions and contrails, rotation, colour-tinting, depth-sorted isometric pseudo-3D and more. You can also download playable binaries of the Asteroids demo for Mac OS X and Windows.

RBGLSprites remains 100% free and open source and is written entirely using pure REALbasic code with no plugins or external libraries required. Games written in RBGLSprites will compile and run on Mac OS and Windows without modification.

We've put a lot of effort into RBGLSprites, so if you like it, please support us by making a small donation.