highlights: new Software RenderSystem and headless mode on Linux
- Main
- DefaultHardwareVertexBuffer - correctly set used BufferMgr
- fix getCastsShadows when inherting from MovableObject + Renderable
- fix inconsistently named PF_RG8
- fix warning in RenderQueueGroup::merge
- ShadowRenderer - fix culling not propagated to RTSS passes
- Image - fix getData() const overload
- add Ogre::to_string(..) alias for unified access to such functions
- add simplified Material::clone overload
- AutoConstantEntry - clean up storage type
- Camera - allow to sort by depth and not by distance
- Compositor - allow referencing global textures again
- DDSCodec - implement writing PF_FLOAT16_R
- GpuProgramParams - only set variability if requestedSize > 0
- GpuProgramParams - simplify two-param AutoConst overloads
- GpuProgramParams - use templated _writeRawConstant & update docs
- GpuProgramParams - use templates instead of copy & paste
- HardwareBuffer - allow acting as facade for real implementation
- HardwarePixelBuffer - consider depth in size computatiuon
- minor code cleanup around _getProgramByName
- Node - inline some trivial setter overloads
- Particle - implement sprite sheet texture animation
- ParticleSystem - fix autoupdate of AABB
- ParticleSystem - fix setMaterialName lookup
- ParticleSystem - forward shadow casting flag to renderer
- ParticleSystem - logError instead of assert on null material
- RenderSystem - add "VSync Interval" as common option
- RenderSystem - do not require validateConfigOptions
- RenderSystem - provide default *TexelOffset implementations
- RenderSystem - unified derived depth bias update
- use RenderWindow::resize to react to size change instead of querying
- replace "depth" by "distance" to match the computations
- ScriptTranslator - avoid multiple lookups for translateProgramRef
- ScriptTranslator - flag unexpected parameter
- ShadowCameraFocused - receiverBB should be intersected with
- unify fsaaHint documentation
- unify null material logging
- unify PixelBuffer locking between rendersystems
- Animation - deprecate IteratorWrapper based access
- deprecate RenderTarget::Impl
- RenderQueueGroup - deprecate getIterator
- GpuProgramParams - deprecate setConstantFromTime
- fix spelling errors reported by lintian
- CMake
- allow/ fix static build of python component
- clean-up feature summary
- GL* - prevent exporting OgreGLSupport for linking
- use OGRE_LIB_DIRECTORY when determining OGRE_PLUGIN_PATH for OGREConfig.cmake
- use PATH_VARS in configure_package_config_file
- Bites - only add D3D include_directories when needed
- RTSS
- assert that we have a sceneManager in synchronizeWithLightSettings
- provide overloads taking material directly instead of by name
- PSSM3 - cast shadows on "lighting_enabled false" surfaces
- ShaderGenerator - do not index SceneManagers by name
- Overlay
- OverlayContainer - drop wrong cast
- OverlayElement - warn if we are about to change the material
- TextArea - ensure glyphinfo is loaded/ avoid superfluos lookups
- Bites
- ApplicationContextBase - catch if no RenderSystems are available
- Input - add Gamepad support
- make GLXConfigDialog optional, relaxing the Xaw dependency
- StaticPluginLoader - add Assimp and TinyRenderSystem
- SWIG
- add Vector.setitem and missing NodeObjectMap
- wrap ParticleSystemRenderer
- Python - enable implicit conversion from float to Radian
- Volume: TextureSource - skip GPU round-trip and allow different formats
- Assimp: respect resource group when creating material
- STBICodec: encodeToFile - improve error message
- UnifiedShader: add texture2DLod
- Tiny: implement Software Renderer
- D3D*
- drop superfluous MinGWSupport headers
- fix braindead CSAA naming and mode selection
- GL*
- clean up display frequency configOption handling
- immediately parse vendor instead of caching string
- D3D11: turn D3D11_CREATE_DEVICE_DEBUG into runtime option
- GL3Plus: turn GL_DEBUG_OUTPUT into runtime option and improve msg format
- D3D9
- port to delegate buffer API
- RenderSystem - remove fields duplicated from RenderWindow
- use staging buffer instead of downgrading all manual textures
- GL
- gl.h and glext.h are unused (#1841)
- port to delegate buffer API
- GLSupport
- correctly request 3.0+ core context
- EGL - also query client extensions
- EGL - provide PBuffer based Window for transparent fallback
- EGL - Window do not require methods only used on X11
- resurrect EGLRenderTexture
- X11EGLWindow - fix shadowing warnings
- GLX - recover from more XRandR failure cases
- Docs
- add missing copyright statements
- add grouping to BillboardSet documentation
- Bites - fix doxygen grouping
- CodingStandards - add SPDX-License-Identifier
- describe the camera coordinate system
- drop references to AGP memory
- improve Scripts part
- improve WinRT build instructions
- Manual - improve SceneManager overview
- manual - unify GPU Program docs below Scripts
- slightly overhaul basictutorials
- Tutorial3 - reference texture splatting wikipedia article
- unify ParticleFX and particle script docs
- update and reference RenderSystem::setConfigOption
- update RTSS docs
- Samples
- Emscripten - fix build
- fix reference to a non existing object in filament.material
- Python - fix crash at shutdown
- VolumeTerrain - store data as half-float to reduce SDK size
- PlayPenTests
- fix missing BSP scene manager RTSS registration
- fix Overlay material warning
- port some tests to UnifiedShader