Name | Modified | Size | Downloads / Week |
---|---|---|---|
Parent folder | |||
README.md | 2025-07-24 | 9.2 kB | |
v14.4.0 source code.tar.gz | 2025-07-24 | 94.2 MB | |
v14.4.0 source code.zip | 2025-07-24 | 96.2 MB | |
Totals: 3 Items | 190.4 MB | 1 |
Highlights
- Full Layered RenderTarget Support
- Initial Icon Font Support
- Improved Bullet Component
- New Bone debug drawing
What's Changed
- Main
- add ACT_WORLDVIEWPROJ_MATRIX_ARRAY & setVPRTCameras
- add MSN_SHADOWCASTER and use it for caster instancing data
- add RSC_VP_RT_INDEX_ANY_SHADER
- add support for 2darray and cube shadow samplers
- add TU_TARGET_ALL_LAYERS
- allow forcing DXT decompression via Codec::setParameter (#3291)
- Android - fix segfault if LogManager singleton already exists (#3423)
- AnimationTrack - use signed comparison to avoid overflow (#3359)
- apply global instancing to all scene objects
- AutoParamDataSource - allow injecting cameras
- Bone: inline some trivial getters
- Compositor
- add 2d_array texture support
- factor out common RT creation
- mention compositor name in warning
- CompositorInstace - drop internal getTargetForTex
- DefaultDebugDrawer - improve bone drawing
- Entity - simplify Bone iteration in getBoundingBox
- fix PF_R8G8 mask (#3323)
- Frustum - handle manual extents and nearPlane change
- handle ShadowTechnique in SceneManger
- HardwarePixelBuffer::getRenderTarget - const correctness
- HardwarePixelBuffer::getRenderTarget - use assert for range check
- Image - use malloc & free to avoid asan warnings
- improve naming of internal rendertextures
- ManualObject - do not duplicate material name & group
- ManualObject - fix auto instancing interop
- move splitOptions to SceneManager
- MultiRenderTarget - devirtualize bindSurface
- NameGenerator - do not use StringStream
- drop some unused sstream includes
- new scheme based global instancing API
- ParticleSystem - reorder base classes and fix casts
- range loop refactoring (#3373)
- re-group shadow documentation in SceneManager
- RenderTarget - devirtualise detachDepthBuffer
- RenderTarget - devirtualise trivial API
- SceneManager - add setShadowTextureCompositor
- SceneManager - const correctness
- SceneManager - reuse resolveShadowTexture
- ScriptCompiler
- add getSourceFile
- add simplified addError API
- add simplified ScriptProperty API
- fix build with DEBUG_AST
- prefer 2d_array spelling
- ScriptTranslator - a property cannot have no values
- ScriptTranslator - simplify getValue
- ShadowRenderer
- add support for layered textures
- add support for TU_TARGET_ALL_LAYERS
- split out TextureShadowRenderer from ShadowRenderer
- split shadow renderers into separate cpps
- ShadowRenderer needs export for MinGW
- simplify Node constructors
- Skeleton
- derive nextAutoHandle from boneList
- devirtualise and inline trivial functions
- ensure all Bones are named
- SkeletonInstance - TagPoints dont need a handle
- SkeletonSerializer - use range based for
- StencilShadowRenderer - programs already use the shadow colour
- store shadow colour in AutoParamDataSource
- StreamSerialiser - initialise headerid
- Texture - add API for unified cubemap and 2D array access
- Texture - factor out common createSurfaceList
- transparents are rendered always after shadowing
- use constexpr for static Vector constants (#3315)
- use inline methods for passing geometry counters
- Use constexpr for static colour constants
- use StringConverter where applicable to join StringVector
- VertexIndexData - fix some Wshorten-64-to-32
- Viewport - add Rect based overloads & regroup methods
- ZipArchive - propagate read only flag to MemoryDataStream
- deprecations
- Root - deprecate autoCreateWindow
- deprecate SceneManager::getShadowCasterBoundsInfo
- Camera - deprecate setWindow
- CMake
- add RsImage codec to feature summary
- fix feature summary for Qt6
- android: update templates to work on recent android APIs
- Dependencies: add workaround for CMake 4 havoc
- Dependencies: update Assimp
- Dependencies: update SDL2
- RTSS
- add SPS_LAYER
- disable mip filtering on shadowmaps
- enable SM4.1 if supported
- handle texture2DArray samplers
- NormalMap - f suffix not allowed with ES2
- Parameter::Content is not exhaustive - pass it as int
- port to new ScriptProperty API
- PSSM - allow using array shadow textures
- PSSM - use TEXTURE_WORLDVIEWPROJ_MATRIX_ARRAY
- ShaderGenerator - drop unused FileSystemLayer member
- ShaderGenerator - factor out getScheme
- use the list of supported techniques
- WBOIT & IBL require ES3
- SWIG
- ignore deprecated API
- Overlay - instantiate ChildMap (#3285)
- wrap CompositorLogic (#3326)
- wrap RegionMap, LODBucketList, MaterialBucketMap and GeometryBucketList
- wrap TagPoint
- HighPy: allow Path in user_resource_locations
- Overlay
- BorderPanelOverlayElement - correctly initialize mBorderUV
- Font - add merge_fonts property
- Font - fix stbtt build
- ImGui - change texture sampler to clamp
- ImGui - preserve alpha in output buffer
- port to new ScriptProperty API
- run on preRenderQueues
- update imgui to 1.91.9b
- OgreBullet
- Add KinematicMotionSimple helper class
- Allow attaching externally created objects
- create kinematic RigidBody helper function
- Support btCompound shape; collider creation
- fixed wrong variable being used in onTick (#3322)
- Implement height field terrain collider for terrain (#3392)
- Terrain
- disable mip filtering on textures without any
- drop ios saving hack
- drop unused NameGenerators
- generate mipmaps on composite map
- TerrainSlotMap: add SWIG bindings (#3298)
- use scissor to limit compRTT update and disable depth
- UnifiedShader
- avoid introducing shadow2D variants
- fall back to VPOS on HLSL3
- HLSL_SM4Support - use texSample overloads for SM4
- GL3Support - always use UBOs with GLSLang
- Paging: drop ios saving hack from Page
- PCZ: range loop refactoring
- Plugins
- Assimp
- create skeleton in the correct group
- try to detect material transparency
- add support for GLTF2 alpha MASK & BLEND
- let Ogre do the bone counting
- RsImage - update image-rs
- Assimp
- GL*
- dont pass GLFBOManager around - it is a singleton
- dont store RTT manager twice
- GL3Plus
- fix binding TEXTURE_2D_ARRAY to FBO
- drop unused mTextureTypes
- respect attachment type for cube maps
- D3D11
- add _createShared2DTex() for WPF interop
- fix rendering to a slice of a pf_depth 2d_array
- RenderTexture - ignore zoffset if we are rendering to all layers
- set the correct mip level for rendertargets
- Texture - fix DDS mipmap truncation issue (#3290)
- Vulkan
- fix blitFromMemory for non consecutive src
- handle TU_TARGET_ALL_LAYERS
- RenderPassDescriptor - correctly handle mSlice
- RenderPassDescriptor - fix validation errors
- Texture - use getNumLayers from parent class
- VulkanRenderTexture - treat zoffset and face the same
- GL: GLTextureBuffer - drop unused getRenderTarget overload
- Tests
- upgrade bundled gtest
- extend tests to XML to mesh conversion
- fix line endings of testdata
- Tools
- XMLConverter
- allow using material multiple times in XML
- make bone id optional in XML
- use range based loop for bone iteration
- AssimpConverter
- add resource location for multipart files
- correctly resolve bundle path
- dont meddle with rpath
- XMLConverter
- Docs:
- 14-Notes: describe layered shadow samplers
- 14-Notes: add compositor support for 2d_array textures
- 14-Notes: add VPRT support
- add HighPy section to Python tutorial
- GLSL - improve binding attributes and samplers section
- Manual - improve Material object documentation
- improve README
- Samples
- fix some mipmap incomplete cases with GLES2
- InstancedViewport - allow rendering to layered target
- InstancedViewports - refactor to work with Cameras
- range loop refactoring (#3366)
- Re-add Ocean.controls for Ocean sample (#3421)
- ShaderSystem - drop directional light flare
- ShaderSystem - minor cleanup
- ShaderSystem - showcase single pass PSSM3
- ShaderSystem - use unlit caster for D3D11
- Terrain - fix terrain saving
- Transparency - do not require WBOIT to run
Development is funded by your contributions
If you use Ogre commercially, consider supporting its development in return: