{mosimage}It's been a month since the first official, final release of OGRE 1.2, so it's time for a maintenance release, getting out all the bugfixes we've been collecting over the last few weeks. Mostly they are small, quite specific or fairly niche items, since the 1.2.0 release proved to be pretty stable, as we'd hoped having done 2 release candidates.

Still, nothing is ever perfect so we'll continue to ship maintenance releases as and when required in parallel to new development effort. As ever, changes to the stable branch are non-interface breaking so you can upgrade from other versions on the stable branch easily. A full rundown of all the fixes contained in this release can be found by expanding the full detail of this post. Happy downloading!


Changes since 1.2.0:

  • Fix bug with software skinning under gcc 4.1 (an optimisation issue which does not occur on stable gcc 4.0 or MSVC)
  • Remove unnecessary (and incorrect, although harmless) linker path from platform manager
  • InputEvent's constructor should take 'when' param as a Real like the subclasses KeyEvent and MouseEvent to avoid truncation
  • Fixed bug in edge list builder when dealing with degenerate
    triangles. Conforming vertex / index data is required to build an edge
    list, so      throw an exception if this condition is detected
  • Fixed HLSL program populating incorrect parameter index of array parameters
  • Fixed potential double inserts into mSupportedTechniques while compile materials
  • Put
    RibbonTrail local TimeControllerValue class into unnamed namespace,
    avoid potential naming conflict and also marked it as private
  • Minor issue in Rectangle2D – set the (unused in most cases) mBox member properly instead of some random stack variable
  • Fixed animation update problem when animation state changed between end of last
    frame and beginning of next frame – note this changes the behaviour of
    AnimationStateSet::getDirtyFrameNumber, if you used this yourself,
    check the changes
  • Fixed
    a bug causing the transform of an object attached to a bone to never
    update if its own transform is changed, when the parent skeleton
    animation is frozen 
  • Entity shouldn't force software animation because of stencil shadows if it has shadow casting disabled
  • Texture Shadow fixes:
    • Fix several bugs with using global custom shadow caster / receiver materials that used vertex / fragment programs
    • Fix
      continuous memory consumption bug when using a combination of
      modulative texture shadows, custom shadow receivers and spotlights
    • Fix bug in setShadowTextureSettings where the previous shadow pixel format settings would be used
  • Remove fog-based distance fade of additive texture shadows since it can't work; clamp to border instead
  • Fix problem in BillboardSet::setTextureCoords if params are 0,0
  • Add compatibility with NVPerfHUD 4.0
  • Add missing 'clear' methods to BillboardChain
  • Add 'SceneManager::hasCamera', 'SceneManager::hasEntity' etc as requested in the forum
  • XSI exporter: Fix a bug when submesh merging is enabled and
    objects do not have the same geometry format (UV sets or vertex
    colours) – would cause objects to be leaked and not exported
  • CompositionPass should take & return a Material shared pointer by const reference instead of by value
  • Ensure correct values are returned from SkeletonInstance::getName, getHandle, getGroup
  • Update to latest Code::Blocks project format
  • OpenGL fix for parentWindowHandle option under Windows
  • Eye vector normalisation fix to the bump map w/ specular shader
  • Fix XMLConverter crash with more than 65536 faces
  • Ocean demo fixes & enhancements:
    • reflection map can now be blurred by using bias to select mipmap level during cube map sampling
    • fixed rotation matrix calc for tangent space to object space transformation – Cg, HLSL, GLSL now produce the exact same image
    • allow wave amplitude to be much larger now that reflections work correctly on waves
    • increased mesh resolution so that large waves aren't so jagged
  • SDK setup enhancements:
    • Wiki page link on finish page
    • Add readme checkbox on finish page so readme.html is opened after SDK finishes install
    • Fixed text crop problem on finish page 
    • Add shortcut link to relevant wiki page for SDK setup and usage
  • Remove  unimplemented FrameEvent method declarations from ParticleSystemManager, shouldn't be there
  • Documentation fixes & tweaks