{mosimage}We’re happy to announce a new maintenance release for those working with the ‘Eihort’ stable branch of OGRE, in the form of v1.4.7. The full details of the release can be found after the break (or in the release changelog after you download it). Mac OS X users using the source release should pay special attention to the fact that the precompiled dependencies package has been updated for this release, so make sure you download that too.

The VC 2003, VC 2005 and Mac OS X precompiled SDKs are updated already, the remaining ones (namely MingW and VC 2008) will be posted as they become available. If you can’t wait, there’s always the source release 😉

As usual the goodies can be found via our download page.


Changes since v1.4.6:

  • Mac OS X:
    • Fixed CGL and uint issues when building against the Leopard (10.5) SDK
    • Carbon and CGL context’s now manage the life of the pixel format, since this is needed to context share.
    • Window destruction and resize fixes.
    • Added in support for WindowEventUtilities to function properly on OS X.
    • OgreCEGuiRenderer now builds on demand rather than being in the dependencies
    • Dependencies package updated, OIS version updated & CEGui package issue resolved
    • Added the Preprocessor Macro NDEBUG to disable assertions in a release build
  • Linux:
    • Add 2 missing headers to Makefile.am so they get installed correctly in Linux
    • Fix a bootstrap warning – extra characters after backslash
    • Fix problem where configure wasn’t completing because of a spurious tab character
  • GL:
    • Remove call to _setCullingMode in GLRenderSystem::initialise – no reason for it to be there and if an auto-window was not used it could cause GL functions to be called before a window & context were available.
    • GL bugfix: unbind vertex / fragment programs at the end of a frame. This avoids having pointers to these programs stored when they could potentially be removed from the resource manager, e.g. during shutdown.
  • D3D9:
    • D3D9: Avoid setting texture transform flags if a vertex program is bound – this could cause a crash if a user incorrectly set a fixed-function transform on a shader-based material.
  • Fix SceneManager::findLightsAffectingFrustum bug; directional lights should have been assigned a zero tempSquaredDist. This could lead to discrepancies between the documented behaviour of shadow texture ordering and the results.
  • Prevent any unnecessary rendering where iterate_once_per_light doesn’t find any lights of the right type to iterate over
  • Unregister Entity from Mesh listener list when destroying. Also reorganise background loading event – queue the event, not the event and listeners, since listeners may get destroyed & removed in between the event getting queued and fired.
  • Fix Math::intersects ray/convex list of planes
  • Initialise Entity::mHardwarePoseCount properly
  • SceneManager::setShadowTextureCasterMaterial and setShadowTextureReceiverMaterial should cope with cases where there is no supported technique gracefully
  • Copy main camera FOV to reflection camera in Demo_RenderToTexture example; some people have changed the FOV and then wondered why they get arefacts.
  • FreeImage codec – make it drop alpha & downgrade to 24 bit if the format doesn’t support 32-bit.
  • Allow OverlayElement::setMaterialName to accept a blank name and thus to reset the material to nothing, to return it to the original state of not rendering.
  • Fix movement speed for high frame rates in example framework
  • Make Node::getRenderOperation() more robust under resource reloading situations. Lower performance, but this is only a debug routine anyway so robustness is better.
  • Correct compositor script syntax – ‘target_output’ should allow all the same options as ‘target’
  • Win32 Ogre::Timer: now sorts out proper use of system cores
  • Fix MemoryDataStream leaving garbage on unexpectedly short read
  • Make SceneManager::setSkyBox tolerant of materials with no supported technique or incorrectly constructed with no passes or no texture units.
  • Fix a rather obscure bug with compositor chains attached to viewports which get destroyed and later recreated
  • Allow objects in render queues between RENDER_QUEUE_OVERLAY and RENDER_QUEUE_MAX to function correctly with compositors
  • XMLConverter resilience fixes
  • Minor doc corrections