view CHANGES @ 407:f27880d4c08c

Moved getAngleBetween() form Camera to angles.h and updated it to not use the camera angle in it's calculation. Added camera rotation to the angle calculation for selecting the correct image by angles. Added a call to setRotation() to make sure that instance rotation is valid.
author prock@33b003aa-7bff-0310-803a-e67f0ece8222
date Fri, 29 Jan 2010 21:03:51 +0000
parents 81641655bc38
children c75f9834f9d0
line wrap: on
line source

== 0.3.1 (March, 2010) ==

=== Engine ===
  * Updated a lot of the python source files to have the correct headers
  * Fixed SWIG wrappers that didn't handle simple output parameters (#340)


== 0.3.0 (January 20th, 2010) ==

=== Engine ===
  * Moved to Python 2.6 (#345)
  * Upgraded guichan in ext to 0.8.2 (#420)

  * Added UTF8 support
  * SCons build system has been re-written (#328)
  * Support for native mouse cursors
  * The background of Label widgets will be painted
  * Added adaptive pathfinding (#347)
  * Modified CellSelectionRenderer to support multiple cell selection

  * Added method Layer::getInstancesAt()
  * Added SoundEmitter::setCallback()
  * Added a setRolloff() function to the SoundEmitter class.
  * Added function to fife_utils: getUserDataDirectory. Returns the proper path to save setting and data files depending on OS. 
  * Removed UnitTest++ from ext (#421)
  * Changed the way the fife python module is imported ( see http://wiki.fifengine.de/Importing_Python_Module )
  * The serializers will use LogManager instead of printing directly to the console

  * GuiManager: Proper translation of Guichan key events to FIFE key events
  * Proper size calculation for ToggleButton
  * Fixed a layer visibility bug where the toggleInstancesVisible and setInstanceVisible functions were not working correctly. (#335)
  * Fixed building FIFE on OS X (#360)
  * Fixed setActionRuntime() (#373)
  * Fixed unreliable time handling when changing time factors.
  * Fixed a bug in the OpenGl renderer where the last chunk of images would not be displayed when image_height % chunk_size was 0.
  * Fixed layer and instance transparency (#378)
  * Fixed a lot of small bugs

=== Rio de hola ===
  * Made rio_de_hola save its settings to the proper OS folder.
  * Added a prefix to cameras in Rio de Hola to avoid name clashes
  * Fixed second camera in rio so multiple Camera.setLocation calls are handled correctly
  * More documentation has been written
  
=== Editor ===
  * Rewrote editor:
    - Improved GUI:
      - Resizable windows
      - Docking
      - Toolbars, menubar, statusbar
      - Model/View approach to toolbar and menubar buttons
    - New signal event system based on the one from django
    - Support for opening multiple maps
    - Better plugin support
  * New plugin: LayerTool
  * New plugin: LightEdit
  * New plugin: CameraEdit
  * Enhanced ObjectSelector
  * Enhanced ObjectEdit
  * New tool: ObjectPicker. Click on an instance on the map to set the current object to the instance object
  * Ability to select cells and perform actions on them (move, delete, fill, ...)
  * New type of scrolling: Press middle mouse button and move the mouse
  * New icons based on Bluesphere
  * Made the editor save its settings to the proper OS folder.
  * Fixed editor bug where the map didn't render after saving (#333)
  * Editor can now re-open a map (#381)
  * Fixed a problem navigating directory structure with the filebrowser (#377)
  * Filebrowser now refreshes when expected (#391)
  * Fixed a lot of bugs, and made a lot of new ones ;-)
  
=== PyChan ===
  * New greedy layout engine: Widgets is now able to expand in addition to shrinking
  * New events: mouseWheelMovedUp and mouseWheelMovedDown

  * Added the position_technique attribute
  * Added Widget.removeAllChildren() method
  * Added a new method Widget.getNamedChildren
  * New method: Widget.insertChild()
  * New method: Widget.insertChildBefore()
  * New property: is_focusable
  * New properties: min_size, max_size
  * Moved helptext property from C++ to pychan
  * New togglebutton widget

  * ScrollArea: Size is not static anymore (can shrink and expand)
  * Allow objects with a call attribute to be used as event callbacks
  * Removed unused TimerListener
  * Switched to new content structure (#336)
  * Made the distribute and mapEvents methods faster
  * Added a small decorator for profiling rarely called functions
  * Optimized adaptLayout()
  * Added fast path for Widget.findChild(name=name). Roughly 10x faster

  * Fixed an input problem when a dropdown box is clicked on (#337)
  * Fixed pychan event_map to support callable objects (#374)
  * Fixed the pychan demo (#363)
  * Fixed a pychan problem where unkown characters were displayed when holding the shift key (#383)
  * Lots of bug fixes
  
=== Documentation ===
  * Fixed some doxygen documentation problems (#343)
  * Created python coding standards article (#372)
  * Created "Bug Report" template (#409)
  
=== Misc ===
  * New versioning scheme (x.y.z) instead of (yyyy.r)
  * Moved extensions and fife.py to <FIFE>/engine/python/fife
  * Moved rio_de_hola and pychan_demo to <FIFE>/demos
  * Moved some misc scripts to <FIFE>/tools
  * Moved the FIFE editor to <FIFE>/editor
  * Added a Win32 installer for FIFE and the win32 SDK

== 2009.0 (January 7th, 2009) ==

=== Engine ===
  * Merged input rework branch
  * Possibility to hide instances/instance visuals
  * Added input and focus events
  * Modified clicklabel to provide a mouse listener for hover events
  * Use strings as grouping in generic renderer instead of numbers
  * Omission of a camera viewport in xml map files now indicate that the camera should use the full window
  * Added removeActionListener to SWIG export
  * Some improvements to Scons build scripts
  * Prepared basicapplication to use WindowTitle and WindowIcon from clients' settings.py
  * Logger now ignores non-existing log modules (warns to prompt)
  * Pools now have a function called purgeLoadedResources which deletes all loaded resources that have a reference count of zero.
  * Movie: Switched to using FIFE::Image instead of Overlays
  * Reworked matrix vector multiplication
  * OpenAL-soft patch for OSS support

Optimizations:
  * Added hasing to pool to improve techdemo loading time
  * Lazy loading for animations
  * Combined events to reduce lag
  * Small optimizations for instance renderer

Bugs:
  * Initialize instance visuals properly
  * Fixed false positives when searching for instances in a rectangle
  * Fixed a horrendous misconception in Pool. The map was sorted by pointer comparison.
  * Fix for textwrapping
  * Fixed bug where instances couldn't change layer
  * Fixed a small bug when initializing OpenGL
  * Fixed a scons issue where libraries checked for C instead of C++
  * Fixed a shutdown order problem
  * Fixed segfault on shutdown when profiling was activated (#334)
  * Fixed: Editors camera doesn't show map after saving (#333)
  * Fixed: FIFE crashes with a segmentation fault (#297)

=== Pychan ===
  * Modified pychan to accept RGBA colors
  * More documentation for layout system
  * adaptLayout now acts a bit smarter
  * Fix for scrollarea bug

=== Rio de hola === 
  * Improved some graphics and added some new ones
  * Profiling support

=== Editor ===
  * Scrolling support
  * Added an undo feature to the map-editor
  * Object editor plugin
  * Some bug fixes

=== Documentation ===
  * Updated the map format article to reflect the datasets changes (#323)

=== Misc ===
  * Removed old testmaps

== 2008.1 (July, 2008) ==

=== Model improvements & simplifications ===
 * Elevations removed (Fallout legacy).
 * Support for namespaces:
  * New resource infrastructure migrated into whole engine. This enables:
   * uniform pooling for all resources that need to be pooled.
   * uniform loading for all resources (model stuff, images, sounds...).
   * uniform saving for resources which support saving (model stuff).
  * Datasets are now stored in a flat list in model instead of dataset hierarchy.
  * Changes in model are now bookkeeped. Observer interfaces provided for change listeners.
   * This enables e.g. reacting only to changes instead of polling on every round.
   * Also critical enabler for triggers.
  * Instances now support initial rotation value.
  * Objects support default actions.
  * Further model cleanup.

=== XML format changes ===
 * All resources are now defined with principle 1 file / 1 resource.
 * Importing of objects can now be done also based on directories where they are contained.
 * Relative paths are now used instead of absolute ones.

=== Loaders ===
 * All loading happens now from python (tinyxml dependency removed).
 * Improved error reporting.

=== Editor ===
 * Possibility to move instances on map.
 * Possibility to rotate instances on map.
 * Possibility to zoom the map (OpenGL mode only).
 * Painting with currently selected instance (e.g. large ground areas).
 * Importing of multiple objects based on given directory.
 * Initial map creation wizard (still work in progress).

=== Rio de hola ===
 * More assets:
  * Graphics, sounds, music...
  * Two new maps matching the storyline.
  * Rio de hola now conforms to package structure: http://wiki.fifengine.de/Fife_Package_Specification
  * Popup menu integration, demonstration of actions (kick, talk).

=== Pychan improvements ===
 * Hiding of scrollbars.
 * Text wrapping.
 * A lot of smaller improvements. 

=== Functionality ===
 * Pixel perfect instance picking (taking transparency into account).
 * Ability to get list of instances from given screen rectangle.
 * Distance calculations made easy, exposed to scripts.
 * Instance outlining.
 * Instance coloring.
 * Screenshots are now saved in png format (instead of bmp).
 * Stereo sound support in linux (introduced with the help of openal-soft).

=== Video / view improvements ===
 * Both renderbackend and separate images can now render graphical primitives (e.g. lines, dots..).
 * Each camera now has separate set of renderers. Allows truly adjusting cameras independently.
 * Zooming capability (currently properly supported only by OpenGL backend).
 * Support for drag cursor definitions.
 * OpenGL graphics chunking size is now definable in settings. Should help e.g. with large backgrounds.
 * GenericRenderer adding customised rendering capabilities for scripts.

=== Misc. changes ===
 * Initial package structure defined for FIFE clients.
 * Updated guichan to the latest release 0.8.1.
 * Usage of unittest++ instead of boost unittests.
 * Lots of bug fixes.

=== Non-code related changes ===
 * Switch from GPL 2.0 to LGPL 2.1 (or newer).