The "/zenilib/0.2.0.0/zen../zenilib_0.2.0.0.zip" file could not be found or is not available. Please select another file.
Looking for the latest version? Download zenilib_0.4.2.0.zip (796.3 kB)
Home / zenilib / 0.3.2.0
Name Modified Size Status
Parent folder
Totals: 3 Items   976.3 kB
readme_0.3.2.0.mkd 2011-01-04 3.9 kB
zenilib_0.3.2.0.zip 2009-08-26 607.6 kB 244 downloads
zenilib_0.3.2.0.7z 2009-08-26 364.9 kB 37 downloads

Notes:

This is a pretty significant release. The Video device is much more robust, supporting dynamic reinitialization in all three operating systems. Widgets can be customized more easily. Gamestates can be paused automatically to pull up a menu, or simply to allow the user to do something else. Compilation is significantly improved in Linux. Additionally, there have been significant bugfixes.

This should probably be 0.4.0.0, but there are "obvious" reorganizations of some blocks of code that should be done. I would rather wait for a cleaner 0.4.0.0.

The following points are important to note. First, the way virtual screen resolutions are specified for Fonts has changed. Values set the previous way will be ignored. Second, Title_State expects a Gamestate to provide instructions. You will get a compilation error if you use Title_State without providing a second Gamestate option.

Changes:

Big Changes

  • Video revamp
    Initialization is more robust
    It can be destructed and reinitialized
  • Widget revamp
    Widgets can be modified more easily
    Widgets now use Widget_Render_Functions which can be swapped out and customized fairly easily
    Slider and Selector now make use of the mouse wheel
  • Gamestate revamp
    Gamestates have on_push() and on_pop() functions to compliment their constructors and destructors
    Gamestates can now be set pausable
  • Popup_Menu_State enables easy access to various options
  • When focus is lost, or when in Popup_Menu_State, the game will be paused automatically if the current Gamestate is pausable
  • When in Widget_States, or when the focus is lost, the mouse will automatically be displayed, and ungrabbed
  • Textures database loading of Sprites is more flexible, supporting inline loading of frames without manually assigning names to them
  • SConscript significantly improved
  • Cleaner scripts duplicated in python and moved to clean/
  • Render-to-Texture is supported as a new feature
  • Random number generator class added
  • Chronometers can be globally paused and unpaused
  • Sound_Source_Pool can mute/unmute all Sound_Sources under its control

Bugfixes

  • g+* and c++0x fixes
  • Core::delete_file(...) fixed
  • XML handlers ignore comments correctly again
  • Widget busy-tracking fixes
  • Title_State is more robust
  • Vertex_Buffer fixes
  • Material optimization fixed
  • v-sync settings work to some extent in Linux (still not in MacOS X)
  • Game.h keeps track of keypresses, enabling more reliable tracking of modifier keys shortly after game launch
  • Debug mode is meaner to you if TEST_NASTY_CONDITIONS is defined (be sure it isn't defined for releases)
  • Screen saver is now disabled properly in Windows
  • Pixel offset fix for Direct3D is now fixed (can be verified by rendering 1 pixel rows and columns)

Code Changes

  • Console_State::write_to_log(...) optimized
  • Vertex2f and Vertex3f constructors now protected, decreasing the likelihood of using them in error
  • Viewport setters have a sane default (full viewport)
  • F1 no longer instantiates Configurator_Video
  • Invalid anisotropy settings are corrected automatically
  • User-specific configuration file location is now printed to stderr.txt to ease debugging of rare issues
  • Text_Boxes and Vertex_Buffers can be globally lost and reinitialized
  • Configurator_Video now lists available full screen modes and displays a confirmation dialog upon changing modes
  • set_2d(...), set_2d_view(...), and set_viewport(...) can now enforce an aspect ratio
  • Documentation collected in docs/
  • Fonts can have a virtual_screen/width, improving rendering quality substantially in some cases
  • Title_State now expects an Instructions_State in addition to the Play_State
Source: readme_0.3.2.0.mkd, updated 2011-01-04