A new maintenance release of the stable 1.0.x branch of OGRE (codename 'Azathoth') is now available for download.
There are new source packages, Visual C++ dependencies, SDKs, and
several tool updates, so be sure to check out all the download
categories. A full rundown on all the fixes and non-interface breaking
enhancements contained in this release is available in the full detail
of this posting.

In case any of you didn't already know, the next major version of OGRE
(1.1.x, codename 'Dagon') is being developed in parallel to the stable
branch. Major enhancements and of course all interface-breaking changes
are going into that branch, and you can keep an eye on the roadmap on
the Dagon wiki page. We keep these development branches separate to guarantee stability and bugfixes to those using 1.0.x.


Changes since 1.0.2:

  • Fixed a problem in D3D9 where GeForce 6×00 range was not enabling infinite projection
  • libOgreMain.so now only exports symbols based on ogremain.map
  • Fixed –enable-openexr argument for ./configure
  • XSI exporter – don't crash if textures are not found, just warn
    instead.  Also trap cases where too many texture coordinate sets
    are used and warn.
  • Last of D3D9 leaks removed
  • Extra logging for D3D9 device lost / restore process
  • Fix device restore of RTT in D3D9
  • Replace SDL hard-coded constant args for SDL_ShowMouse
  • Make RenderWindow::windowMovedOrResized virtual & generalised
    from GL/D3D since they're useful for people with externally managed
    windows
  • Corrected type of the returned value from
    std::string::find_first_of and find_first_not_of
  • Allow external setting of BillboardSet bounds for billboard
    injection
  • Q3A level loader – reject lightmap indexes < 0, not just -1,
    for greater level compatibility
  • Export TagPoint to allow post attach-to-bone modifications
  • Set ambient light settings per _renderScene call incase we switch
    contexts in GL
  • gcc 4.0 compatibility and removed the need for GCC_3_1 compiler
    flag
  • In GL, support the GL_MAX_TEXTURE_IMAGE_UNITS_ARB number of
    texture units when using shader hardware instead of just
    GL_MAX_TEXTURE_UNITS
  • Fix attaching particle systems to bones 
  • Implemented vp30, vp40, fp30 and fp40 Cg profiles
  • Fixed a 64 bit issue in Serializer::flipEndian
  • Add conversion from GpuProgramPtr to HighLevelGpuProgramPtr, and
    fix mutex usage on existing reverse conversion
  • CEGUI v0.3.0 now required
  • Fix memory leak in ZipDataStream
  • Fix to AnimationTrack::optimise – we should not eliminate all
    duplicate keys since the boundary values are required to preserve the
    interpolation shape. In fact, we need to preserve sequences of up to no
    more than 4 identical keys to preserve tangents for if spline
    interpolation is used. Any inner ones are removed.
  • Matrix4::operator != should take a const reference parameter
  • Node::removeAllChildren should notify those children of
    detachment and clear the child update list too.
  • Fix a bug in StringUtil::match where a partial match after a
    wildcard goes wrong and the wildcard doesn't correctly consume it ready
    for later matches
  • Fixed some variable shadowing warnings in gcc
  • Don't try to prep subentities for shadow volumes if they don't
    have their own geometry
  • Fixed DataStream::readLine returning incorrect count and not
    dealing with reading exactly the max length properly
  • Fixed TerrainSceneManager incorrectly calculating normals
  • VertexData::vertexStart bugfix for GL render system
  • Fix small inconsistency in near / far clip plane in world space
    between rendersystems
  • A few win32 resize / getMetrics fixes
  • Allocate initial particle pools on demand to save memory
  • 3DSMax exporter – support mirrored bones
  • Fix memory leak in Bsp Collision demo
  • Correct GLX initialisation issue
  • Objects which are attached to bones are now properly picked up by
    scene queries and cast shadows properly
  • Fixed carrying forward of manual loader through
    Material::applyDefaults
  • A few other miscellaneous safety checks