Skip to content

v13.4.0

Compare
Choose a tag to compare
@paroj paroj released this 07 Jun 00:02
· 1159 commits to master since this release

Highlights

  • Add Bullet component based on BtOgre
  • add VET_INT_10_10_10_2_NORM
  • add basic support for joystick devices

What's Changed

  • Main
    • add ControllerReal typedef
    • add top-level aliases for material schemes e.g. MSN_DEFAULT
    • AutoParamDataSource - use lookRotation to get spotlight matrix
    • BillboardChain::Element - width and texCoord should always be float
    • EdgeListBuilder - improve asserts in addIndexData
    • Entity - drop useless extractTempBufferInfo indirection
    • factor out VertexData::_cloneRemovingBlendData so it can be shared
    • fix delayed loading of shadow caster material & add test
    • fixed incorrect handling of samplers as constants
    • fix StaticGeometry::setRenderingDistance
    • FocusedShadowCameraSetup - drop special mLightFrustumCamera
    • FrameTimeControllerValue - inline trivial functions
    • GpuProgramParams - validate named constant count
    • GpuSharedParameters - use template to avoid code duplication
    • HardwareBufferManager - devirtualise methods called in destructor
    • InstanceBatchHW - use correct HBU_CPU_TO_GPU
    • LightClippingInfo - clipPlanesValid should be a bool
    • Light - fix OGRE_NODELESS_POSITIONING typo
    • Math - fix noisy compiler warnings (#2463)
    • Mesh
      • add UserObjectBindings & merge PrefabLoader + PrefabFactory
      • check skeleton by pointer instead of by name
      • default AutoBuildEdgeLists to false
      • slightly refactor softwareVertexBlend
    • ParticleSystemRenderer - correctly deprecate ParticleVisualData
    • replace deprecated std::binary_function by lambda
    • Resource - _fireLoadingComplete parameter is unused
    • SceneManager
      • inline _populateLightList overload
      • shadow casting lights can be != shadow textures
    • ScriptTranslator
      • catch invalid multiple target_output usages
      • deprecate bool symbol
      • factor out safeSetConstant
      • make caster_ref fallback technique-specific
    • ShadowCameraSetup
      • do not re-derive orientation when possible
      • use default method to get ShadowMappingMatrix
    • Serializer - slight cleanup
    • ShadowRenderer - const correct sortLightsAffectingFrustum
    • simplify GpuProgramManager::createImpl
    • TangentSpaceCalc - dont discard existing vertex data
    • TempBlendedBufferInfo - handle additional attributes in pos buffer
    • Texture - unify validation of number of requested mips
    • use new HBU_* names in headers to improve documentation
    • VertexData - implement convertVertexElement
    • VertexData - simplify reorganiseBuffers
    • VertexElement - deprecate convertColourValue
    • VertexElement - deprecate getBestColourVertexElementType
    • Viewport - inline trivial member functions
    • Viewport - use TRect to store dimensions
    • WorkQueue - simplify WorkerFunc
  • CMake
    • fix setting of OGRE_NODE_INHERIT_TRANSFORM option
    • let CMake autodetect OSX_SYSROOT
    • Dependencies: update to latest releases
    • Dependencies: make sure we capture our self-build SDL2 on Linux
    • pkg-config: match cmake regarding include paths
    • Don't use sse on non-x86 architectures (#2444)
  • RTSS
    • CookTorrance - respect transparency and ambient light
    • fix getAutoConstantIntData for array types
    • PBR - iterate lights in shader to avoid redundant computations
    • PSSM - move ApplyShadowFactor to lighting stages as it should be
  • Bites
    • add basic support for joystick devices
    • ImGuiInputListener - finish port to event-based IO
    • correct check if a gamecontrollerdb.txt is loaded
  • SWIG: wrap BillboardChainElement
  • Overlay: update ImGui to 1.87
  • Terrain: fix getCastsShadows always being true and change default
  • GL: GpuProgram - drop duplicated fields
  • Vulkan: correctly check for RSC_USER_CLIP_PLANES
  • Metal: fix crash on shutdown from mDefaultVP/FP outliving their creator
  • D3D*: port to common isCompatible() method
  • D3D11
    • D3D11DeviceResourceManager - improve assert message
    • HLSL - simplify IA reflection handling
  • PCZSceneManager: fix named node registration in createSceneNode override
  • Assimp
    • explicitly give GenSmoothNormals precendence
    • fix string comparison when walking bones
  • Samples
    • add Bullet sample
    • Browsers - fix overflow of samples carousel
    • Python - add google colab compatible ipy notebook
  • Tools
    • clean up help CLI help strings
    • make use of Ogre::Root to reduce boilerplate code
    • XMLConverter - drop VET_COLOUR* parsing from CLI
    • MeshUpgrader: add option to pack normals and tangents as int_10_10_10_2
    • AssimpConverter: include plugins in RPATH, so Codec_Assimp is found
  • Docs
    • correct channel order of metal roughness params
    • improve FrameTimeControllerValue documentation
    • improve Hardaware Buffers documentation
    • improve Plugin documentation
    • merge getUserObjectBindings descriptions
    • MeshTools - update documentation and add AssimpConverter
    • minor fixes
    • shadows - small formatting fix
  • Tests: test PF_A2R10G10B10 packing/ unpacking

Development is funded by your contributions

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