following the last post about what is going on around Ogre, here is another update.
Ogre 1.12.6 point release
The 1.12.6 point release kept its focus on integration. Notably, it ships the Qt OgreBites implementation, that was discussed in the previous post. Also there are the following notable changes:
- The OSX & iOS support was vastly improved. If you had any issues with using Ogre in these enviroments, please try again with Ogre 1.12.6. The improvements include scaling the input events along the window content scaling and corrected library resolution from inside an .app bundle. I also started backporting the Metal RenderSystem to the 1.x series. See the metal-wip branch. Help is welcome.
- Also Ogre 1.12 is now available in Debian sid & unstable. Notably, this also covers the python bindings and imgui. So prototyping a 3D application is only a
apt install python3-ogre-1.12away. Also this is a major step forward from the previous Ogre 1.9 package and allows 3rd party apps like ROS relying on it. These packges are also availble in the latest Ubuntu 20.04 release, which is based off Debian unstable.
- Next, the MSVC SDK was refined: it now properly packages and compiles the C# ibindings. You no longer have to compile any Ogre C# sources yourself. As for C++, the pdb files are finally included, which allows you using the SDK for debugging (note that the build type still is RelWithDebInfo and not Debug).
- The refined “Fixed Pipeline Enabled” RenderSystem option allows you to bring the legacy GL & D3D9 RenderSystems into a programmable pipeline only mode. Setting it to false is the first step, if you consider porting to GL3+ & D3D11 as it will enable the RTSS shader generation, while keeping everything else the same. It also allows you toggling forth and back between shader based and fixed pipeline to compare rendering, instead of having to pull the plug once and for all.
- For the full list of changes and bugfixes as always consult the github release
Probably the biggest strength of Ogre 1.x is the legacy of content creation tools and addons. Here, I resurrected the following tools beneath the OGRECave umbrella:
- The meshmagick CLI .mesh optimization and manipulation tool. It allows you to conveniently change the coordinate system or merge all sub-meshes into one buffer.
- The shiny shader meta-compiler & management library. In the mid-term we want to extend the RTSS by similar features and generally recommend to prefer the RTSS. However, there are some existing projects relying on this library, and this allows them to upgrade to recent Ogre releases.
- The ogre-gpgpu toolkit. This is a collection of many Computer Vision and Augmented Reality related tools built around Ogre. So far, I only brought back the Ogre-CUDA bridge.
When it is ready, this probably will be moved into the core repository. Therefore, this project can be considered as a staging area.