v1.10.2

@paroj paroj released this Feb 12, 2017 · 12 commits to master since this release

No longer a fork merged with bitbucket and removed custom branding

  • New API
    • GLSupport: export necessary AndroidEGLWindow API
    • the RTSS shaders can be dumped at runtime using ApplicationContext::setRTSSWriteShadersToDisk(true)
    • add MaterialManager::getDefaultMaterial() to avoid hard-coding BaseWhite
    • OgreAny: extend API to be compatible with std::any
    • introduce OgreAssertDbg macro that only fires in debug mode
  • Faster Strings:
    • StringConverter: drop locale support for faster parsing (always uses "C" locale)
    • StringUtil: use strn(i)cmp for startsWith endsWith
  • MurmurHash3 everywhere:
    • RTSS: ShaderProgramManager - use MurmurHash3 instead of ad-hoc solution
    • FastHash: use MurmurHash3_x86_32 internally instead of SuperFastHash
    • OgrePass: clean up HashFuncs and default to MinGpuProgramChangeHashFunc
  • OGRE_RESOURCEMANAGER_STRICT - makes ResourceManager strict for faster and easier operation:
    • resource names are case sensitive
    • only indexed resources are found
    • resource groups correspond to namespaces by default now
    • many Ogre functions now require the group argument to remove ambiguity
    • no unpredictable fallbacks to the global resource pool
    • Samples/ Tests: run with OGRE_RESOURCEMANAGER_STRICT
    • add Ogre prefix to Internal and Autodetect group names
  • deprecate OgreIteratorRange and Ogre*iterator
    • access the vector directly using e.g. Mesh::getSubMeshes() instead of Mesh::getSubMeshIterator
    • see the deprecation list for details
  • Platforms
    • Fixed WinRT build - let SDL2 handle events
    • fix compilation with MinGW
    • OSX: autodetection instead of explicit macAPICocoaUseNSView parameter
  • Bugfixes:
    • OgreInstanceBatch: correct bounding radius calculations and material LOD
    • OgreInstancedEntity scaling behavior should match OgreEntity scaling
    • Bites: correct ifdef in AdvancedRenderControls
    • OgreTechnique: do not crash if _compile called without a RenderSystem
    • Dependencies.cmake: update zlib to 1.2.10 as zlib 1.2.8 is gone
    • CMake: set CMAKE_BUILD_TYPE more robustly and remove obsolete checks
    • Backported Display Refresh Rate bugfixes from from 2.1
    • GLSL Preprocessor: fix incorrect Macro functions expansion with braces
    • OgreMain: Hash/MurmurHash3.h -> OgreMurmurHash3.h to be consistent
    • New Instancing: fix broken shadows in Sample
    • ShadowVolumeExtrudeProgram: correctly set stencil shadow params for GLSL
    • [D3D11] Fixed crash on rendering to texture due to the unsupported FSAA level
    • GLES2: allow multisampled FBOs if supported
    • OgreZip: throw on error to be consistent with FileSystemArchive
    • Samples: reset frame statistics between sample runs
    • OgrePass: clean up HashFuncs and default to MinGpuProgramChangeHashFunc
  • Better Testing:
    • Tests: port to gtest
    • Tests: add regression test for InstancingEntity bounds
    • Tests: allow building and running on android (see NDK docs how)
    • Tests: use FileSystemLayer to resolve data and thus are distributable now
    • Tests: fix startup on OSX
    • Tests: add regression tests for GLSupport/ CPreprocessor
    • Tests: correct mesh exporting and do not leave temporary files behind
  • Other Changes:
    • Sample Media is now in "General" group instead of "Popular"
    • throw on OgreAssert in Release builds by default
    • Node - devirtualise methods not meant to be overridden
    • SceneNode: devirtualise methods not meant to be overridden
    • devirtualise internal only and final objects
    • Changed allocation policies to use noalias & restrict optimizations
    • OgreMath: replace slow and mostly unused asm_math.h by inline function calls
    • ResourceGroupManager: avoid searching the same groups multiple times
    • ResourceGroupManager: remove duplicate locks
    • GLES2: drop GpuProgram indirection
    • MSVC: remove obsolete Wd and pragma warning directives
    • OgreMain: drop OgreHeaderPrefix/ Suffix
    • OgreMain: use Ogre::String in PixelFormatDescriptions to avoid copy
    • GL/GLES2: simplify StateCacheManager structure
    • OgreScriptTranslator: print actual error description
    • OgreArchiveManager: raise an error if readOnly flag does not match
    • devirtualise internal only and final objects

Downloads