github OGRECave/ogre v13.2.0

latest releases: v14.2.4, v14.2.3, v14.2.2...
2 years ago

What's Changed

Highlight: Vulkan RenderSystem added

  • Main
    • Frustum - deprecate getProjectionMatrixRS
    • Mesh - drop mSkeletonName as it always matches mSkeleton
    • RenderSystemCapabilities - deprecate int&bool programConstantCount
    • RenderSystem - hard deprecate old StencilState API
    • ResourceGroupManager - move error checking to getResourceGroup
    • SceneManager - better GPU profiler grouping
    • ScriptTranslator - deprecate cull_software
    • ScriptTranslator - streamline parameter type parsing
    • ShadowRenderer - load spot_shadow_fade.dds ahead of time
    • Texture - ensure listeners are notified for manual textures too
    • TextureUnitState - drop reference to managed textures on unload
    • GpuProgramParams - dbg assert we dont write out of bounds
    • update zip/ miniz to 2.2.0
    • Use safe idiom for math constants.
    • allow instanced rendering w/o an instance buffer
    • Fix FTBFS on GCC 11
    • Media: drop obsolete HLMS shaders
    • remove windows defines from cross-platform code
  • Bites
    • ApplicationContext - add method to query the current DPI
    • Trays - disable transparent sorting to improve batching
  • UnifiedShader
    • add OGRE_UNIFORMS macro to toggle UBO usage
    • add row_major for Vulkan
    • correctly guard Vulkan specific macros
    • fix availability of semantic aliases
    • map ivecN to HLSL
    • add all TEXCOORDn defines
  • RTSS
    • allow targeting glslang
    • further refactor parameter writing
    • GLSL - enable binding samplers in shaders via UnifiedShader
    • GLSL - let UnifiedShader take care of gl_FragColor differences
    • GLSL - use separate program linkage when available
    • GLSL - Vulkan is strict regarding vertex attribute type
    • GLSL - we can safely use custom attribs for VES_COLOUR everywhere
    • GLSL - write params as UBOs when using SPIRV
    • GLSL - write uniform location when possible
    • merge GLSLESProgramProcessor into GLSLProgramProcessor
    • ProgramManager - use writer language as cache-file extension
    • refactor ProgramProcessor registration
    • refactor ProgramWriter registration
    • update ShadowPCF4 for Vulkan
    • use UnifiedShader sampler declarations with all ProgramWriters
    • write semantics with GLSL too - to be used as attribute locations
  • Overlay
    • fix missing bits for HiDPI support
    • Font - disable transparent sorting to improve batching
    • ImGui - use Vulkan friendly buffer management
    • revert our changes to utf8_decode that broke it
    • update imgui to 1.85
  • Terrain
    • avoid interrupting rendering for Vulkan compatibility
    • GLSL - add Vulkan support
    • use texture unit count instead of shader language as heurstic
  • GLSLang
    • correctly read alignment of UBOs
    • do not register if SPIRV is not supported
    • SPIRV-Tools dependancy is superfluous
    • UBO - fix wrong size and disable logical indexing
    • do not pad 1-element uniforms as per std140
    • use latest GLSL version to get all features
  • Vulkan
    • add new RenderSystem based on ogre-next version
    • currently classified as BETA
  • D3D*: drop unused createInternalResources overload
  • D3D11
    • allow using debug markers, regardless of Ogre instrumentation
    • HLSLProgram - destroy default buffer on unload
  • D3D9
    • HLSLProgram - set correct bufferSize when reading microcode
    • stop counting constants twice for parameter buffer size
  • GL*
    • drop superflous GLHardwarePixelBuffer indirection
    • RTT Preferred Mode is legacy GL specific
    • allow PF_DEPTH MRT on GL & GLES2 + small fix for GL3+
  • GL3+
    • allow binding samplers in shader
    • use BaseVertex variants for vertexStart instead of trashing VAO
  • Metal
    • drop superflous code-paths
    • finish DepthBuffer support
    • simplify uniform index offset handling
    • fix wrong VES_TANGENT location
  • Docs
    • BuildingOgre - add Vulkan requirements
    • BuildingOgre - update dependancy list
    • improve cmake part of bootstrap tutorial
    • improve instancing section
    • Manual - rework hardware buffers section
    • Manual - adapt some pages for new theme
    • move library descriptions from Tutorial1 to Setup
    • use doxygen awesome theme for readability & mobile support
    • add Metal and Vulkan to modules and remove GLSupport
  • Samples
    • Browser - fix drawing of Thumbnails
    • Browser: scale overlay on HiDPI displays
    • Instancing - drop check for specific shader languages
    • LightShafts - update for Vulkan
    • PBR - update for Vulkan
    • Skinning - make sure we query the correct scheme
    • TextureArray - update for Vulkan
    • use UnifiedShader for B&W compositor to get Vulkan support
    • Fresnel - port to UnifiedShader for Vulkan support
    • implement DoF compositor
    • ShaderSystem - move InstancedViewports code to that SRS
  • Tests
    • update gtest to 1.10
    • BillboardText - use non-ascii pangram to test utf8 decoding

Development is funded by your contributions

If your company uses Ogre, consider supporting its development in return:

Don't miss a new ogre release

NewReleases is sending notifications on new releases.