Subscribe to GameFromScratch on YouTube Support GameFromScratch on Patreon Join the GFS Discord Server!
30. April 2018


OGRE3D just released version 1.11.  OGRE (Object Oriented Rendering Engine) is an open source rendering framework written in C++.  The 1.11 release codenamed “Rhagorthua” was heavily focused on cleaning up the underlying code base to improve future development.  This includes tasks like switching to C++11 STL containers when possible, reduced memory consumption and a new scene loading API, SceneLoaderManager.  You can download OGRE 1.11 here.


Full details of this release from the changelog:

  • Main
    • RenderTexture: complete and fix PF_DEPTH usage
    • Support bulk convert and get sub volume of a slice of a compressed texture
    • Add errors for too many or too litle braces in scripts Closes #701.
    • Adds KTX (ETCCodec) support for loading mipmapped textures
    • Adds support for PVRTC pixel format in KTX containers
    • clang-tidy: fix performance-faster-string-find
    • clang-tidy: fix performance-type-promotion-in-math-fn
    • Fixed crash in RenderSystem::shutdown due to the notifications being sent to already destructed render targets
    • fix several gcc8/ clang7/ MSVC warnings
    • DataStream::readLine - fix out of bounds read (ret = 0)
    • generate a deprecation warning on "lod_distances" usage
    • Image - undeprecate 2D loading overloads
    • improve ResourceGroupManager documentation
    • ParticleSystem::fastForward - use round to avoid float iteration
    • Root - skip FrameListeners that are removed during event dispatch
    • SceneManager - explicitly disable mip filtering for depth map
    • SceneManager - flag GPV_GLOBAL on setAmbientLight
    • ScriptCompiler - improve error messages
    • SubEntity - add quotes to name strings
    • MeshLodGenerator: fix wrong stream eof() usage
    • InstancedEntity: Take scale into account when culling objects.
    • [Win32] Register Ogre log files to be collected by Windows Error Reporting and eventually passed to developer (would not happen under debugger)
    • Main: StringConverter - use empty newlocale on MinGW
  • Bites
    • ApplicationContext - fix reading shader cache and log on failure
    • ApplicationContext - forward fullscreen option to SDL (#658)
  • CMake
    • allow overriding OGRE_WARNING_FLAGS
    • Dependencies - propagate CMAKE_GENERATOR_PLATFORM
    • specify minimal required SWIG version
    • update dependencies
    • warn on deprecated true/ false settings
  • EXRCodec: Fix VS2017 error C2872: 'FLOAT': ambiguous symbol. (#723)
  • D3D11: D3D11Mappings - map DXGI_FORMAT_R8_UNORM to PF_R8
  • D3D9: fix compilation with MinGW
  • GL*:
    • log shader compile errors output as LML_CRITICAL
    • Fix for VAO leakage in ~GLVertexArrayObject
    • removed mRenderTargets destruction from ~GLxxxRenderSystem() as it's already done in RenderSystem::shutdown() method
    • do not force-enable shader cache
  • GL3+
    • FBOs are not shared between contexts, should be used and destroyed on the proper one
    • Fixed bugs on attempt to download non-zero miplevel; support for depth > 1
    • fix loading monolithic program from cache and log on failure
    • GL3PlusTextureBuffer: Ability to download to the non-consecutive PixelBox, useful for tiled rendering of very large images, atlasing, etc. GL RS already could do this
    • gl3w - update get_proc for APPLE from upstream
    • GLSLShader - workaround gl_ClipDistance on Intel Windows Driver
    • auto upgrade shaders to version 150 on OSX
    • Do not unbind VAO at the end of _render() to significantly increase performance of multi-pass rendering, at least on OSX
    • fixed GL_MAP_UNSYNCHRONIZED_BIT usage
    • Exclude glsl130 and glsl140 profiles unsupported in OSX Core profile
  • GL3+/ GLES2
    • enable primitive restart when available
    • GLxxxFBORenderTexture,GLxxxFBOMultiRenderTarget::getCustomAttribute() should return GL context to switch to before rendering
    • Optionally recreate FBO in GLXxxFrameBufferObject::bind(bool recreateIfNeeded) if unusable with current context
  • GLES2
    • do not automatically activate, as no other RS does this
    • If VAOs are supported: do not unbind VAO at the end of render(), do not clear scratch VAO #0 if not corrupted, explicitly bind scratch VAO #0 when required. Caching removed as it is not VAO ready, and will always miss in current usage scenario.
  • GL: drop OSX Mavericks HBL_DISCARD workaround
  • GLSupport:
    • do not attempt to set external windows full-screen
    • fix layout qualifier parsing
    • GLX - implement minBufferSize
    • GLX - support creating core 4.6 context
    • OSX - make sure contextProfile is correctly forwarded
    • Fix crash when embedding OgreOSXCocoaWindow in external window
  • RTShaderSystem: fix compile error when using double precision (#622)
  • Overlay
    • Scripts - add support for ogrescript syntax
    • warn about incompatibility with new script compiler
    • Accept opening '{' on the same line as the Overlay definition in a .overlay script
  • Samples
    • Browser - avoid double free on OSX
    • PBR - precision statement should in GLSLES only
    • python - update raw sample to deprecation-less API
    • Sample - const correctness
    • shadows.glsl enable upgrading to GLSL150
    • Terrain - use "General" resource group instead of "Terrain"
  • Tests:
    • General - do not try loading shared plugins in static build
    • Terrain - actually test something
  • Docs
    • describe how to use the fixed-function Pass options in shaders
    • Overlay/ Fontdef - improve parameter formatting
    • update css for Doxygen 1.8.13
    • update Overlays section and update GUI library references

GameDev News


blog comments powered by Disqus

AppGameKit Studio

See More Tutorials on DevGa.me!

Month List