Changelog for Photon $Id: CHANGELOG.txt,v 1.15 2005/11/15 06:01:12 cozman Exp $ ! : Major Changes (potentially breaking existing code) + : New Features * : Minor Changes (bugfixes and behind-the-scenes changes) 0.1.0 ! Changed createDisplay to use an enum to set fullscreen/windowed mode. * Added first official tutorial. * Converted text-file documentation to HTML documentation, allowing online docs to more closely mirror offline docs in content. * Major documentation sweep, much more useful for casual users. Also fixed tons of documentation mismatches. * Fixed bug where app would hang if run() was called with no active state or before the display was created. * Changed AudioCore to be pure virtual with OALAudioCore implementing it. * Fixed issues with OpenAL 1.1 new types. * Rewrote circle drawing code in Pen, major speed up. 0.0.2 - Released 2005-18-08 ! Removed InputListener, opting to move features into State class. ! Dropped reliance on Kernel, and added main loop to Application, Kernel access now available through Application's getUpdateKernel() and getRenderKernel(). + Code::Blocks and Dev-C++ support, also very shaky MSVC support + Addition of a State stack allowing for applications to fall back to the previous state when done with a particular state. + Notification of mouse wheel events added. + Addition of a State test/example program. + Addition of Application::setFrameTimeSmoothing ability to set how elapsed time is calculated. (actual/average currently supported). + Addition of fixed time stepping option in Application/State system. + Addition of code to allow control of depth testing via Application::setDepthBufferParams * Fixed X11 fullscreen mode * Removed ALUT dependencies by adding custom WAV loading code * Mouse move events now give relative position. * Properly handle regain of focus, unpause Application's timer. * Fixed several minor bugs. (random stack crash on exit, doc mismatch) 0.0.1 - Released 2005-08-08 + State-based design that allows easy creation of applications by simply deriving from a basic 'State' class. + Kernel/Task system allowing full control over game loop. + Extensive Log system that allows full control over logging including various log levels and three built in forms of output, with the ability to add custom output formats. + A wide variety of helper utilities for tasks such as filesystem navigation, FileBuffer capable of reading from archives, random number generation, versioning, and timing + Powerful input system allowing for direct access to keyboard/mouse status or passive listeners which are notified of events when they occur. + Resource Management system including the ability to load resources from specified directories or archives. + Variety of math classes including Circle, Rectangle, and Vector classes convinient for game use + ConfigFile class for reading/writing INI-style files for game settings + OpenGL management including ability to set video mode, and easy management of multiple viewports + Resource-managed Texture class allowing for loading of textures for use in OpenGL + Image class that extends Texture class, allowing for hardware accellerated drawing, rotation, scaling, and blending of images for use in 2D environments + Resource-managed Font class allowing for the rendering of text using TrueType fonts + Primitive-drawing ‘Pen’ class allowing for drawing of various geometric shapes, lines, and vectors. + OpenAL based sound system* + Entire library is built in a highly-modular fashion with extensibility in mind. Use of modern programming techniques like templates and exceptions contributes to ease of use and ease of development. + 12 demo programs showing features and ease of use of various components.