May 30 patch

From GriffinEngine
Jump to: navigation, search

May 30 patch (revision 388) includes minor bugfixes, additions to HUD and mouse, a new geCircle class, and updated example code in main().

Detailed list of changes

  • Animation
    • Now all playing animations will advance automatically (no need to call Update() manually).
  • HUD
    • Removed callback function. All HUD-related code can now be placed with the rest of the code in geGame's main callback.
    • Fixed y-axis inversion caused by inconsistency between OpenGL and SDL coordinate systems. Now point (0,0) is always in the top-left corner in HUD.
    • Added the ability to disable the default mouse cursor (pointer), or replace it with any geObject2D.
    • Added the ability to align HUD elements (geObject2D's) by specifying a point of reference. This is done with Align() method.
    • Added the ability to set the axis of rotation for HUD elements. This is done with SetAxis() method.
    • Added geCircle object for drawing circles, ovals, and circle segments on the HUD.
    • Added copy constructors for all HUD elements.
  • Keyboard
    • Fixed events not firing when a keyboard key is held down.
    • Slightly changed geKeyState enum to distinguish between key-up and key-released states.
  • Mouse
    • Added static methods for checking mouse button states: getButtonState() and isButtonDown().
    • Modified button-state behavior to match the key-state behavior.
  • main
    • Updated examples and clarified comments

Affected Files

See the diff at gforge
  • geAnimation.h
  • geAnimation.cpp
  • geGame.h
  • geGame.cpp
  • geHUD.h
  • geHUD.cpp
  • geKeyboard.h
  • geKeyboard.cpp
  • geMouse.h
  • geMouse.cpp
  • geObject2D.h
  • geObject2D.cpp
  • geParticle.cpp
  • main.cpp

Affected class APIs