Skip to content
This repository has been archived by the owner on Oct 2, 2020. It is now read-only.

0.9.0 Snapshot 1

Pre-release
Pre-release
Compare
Choose a tag to compare
@WhyAreAllTheseTaken WhyAreAllTheseTaken released this 13 Nov 18:20
· 52 commits to master since this release
1c7a883

0.9.0 is finalised enough to be usable but some features are still incomplete/buggy.
The API is subject to change throughout this version.

Major Changes

  • Slick2D is no longer used in the majority of the engine.
  • All rendering is now handled through the renderer.
  • Most core features are now custom built.
  • A game class is now used instead of slick classes.
  • Rendering is handled abstractly and so can (in theory) be implemented for other rendering libraries.
  • LWJGL2Renderer is currently the main renderer.
  • Renderer are implemented using inheritance.
  • Input is now handled through the same API as rendering as most input polling is controlled by the renderer.
  • Do not use the Keyboard or Mouse APIs from LWJGL for input as this can cause portability issues. Instead use the ones provided by the Game and Input classes
  • The lighting engine can now be set using an enum

Features

  • Rewrote transitions
  • Game containers are now integrated into the game.
  • States are now handled by RPGOnline
  • Renderer can now do anything that was required of Slick2D by the old engine.
  • A new image class is now used.
  • Renderer now has version information.
  • Reimplemented cutscenes using the renderer.
  • Sky now uses renderer.
  • Rewritten shaders
  • Structs can now be used with shaders.
  • Added fade transitions
  • Added HDR
  • Added better, more-efficient shader-based lighting
  • Added antialiasing

Bug Fixes/Stability Improvements

  • Fixed issue where error logs would not show for linking shaders
  • Post processing in GUIs is a bit better
  • FBOs are now used instead of pbuffers
  • Less crashes now happen in the GUI system.
  • Tiles are not clipped immediately if they span more than one tile.

Optimisations

  • Wind textures have very little performance impact.
  • Texture binding is now more efficient.

Misc Changes

  • Debug screen is now more customisable.
  • World state is now more modular.
  • FPS is now computed to 7 decimal places.
  • Graphics does not require a specific renderer unless the renderer implementor chooses to write their own.
  • Default font changes

Deprecations

  • Removed text color
  • Removed controller support until it can be replaced.
  • Removed snap to pixel
  • Replaced MDR with HDR
  • Deprecated buffer-based lighting.
  • Slick shader was been mostly replaced.