All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
This project adheres to a flavour of Calendar Versioning
for the globale releases (YYYY.MINOR
), and to Semantic
Versioning for libnodegl
.
- Rename AnimKeyFrameQuat/Color data fields to value to better match other usage
- Added Mac and iOS image capture support for MoltenVK
- Release and leaks scripts transitioning from bash to python
- Fixed cross-compilation on MacOS targets from MacOS Hosts
- Log draw times at debug level when hud is enabled
- rtt unit tests on Mac ARM architecture now pass
- Compilation of asm file extension .S for aarch64
- Ref count changes across node.gl, but particularly in nodes, are now atomic
- Display nodegl version and used backend in hud
- Add cubemap image support in compute shaders for OpenGL and Vulkan backends.
- Make-release now works on Mac
- OpenGL capture to Core Video now works on Mac
- Support for binding layered texture resources as image arrays
- Color channel difference in
ngl-diff
is now done in linear space
- Windows DLL information (Copyrights, Version, Name)
- The installed
nodes.specs
is now inJSON
instead ofYAML
- The default branch is now named
main
- Crash with specific draw time sequences in some time filtered diamond-tree
graphs involving
TimeRangeFilter
nodes keeping some parts of the graph active - Build
setuptools>=60
on MinGW - Hooks file synchronization for file names with special chars
- A race condition in
ngl-control
reload mechanism
ngl-diff
can now open images
- Improved
ngl-diff
color map
- HDR tone mapping support for PQ content
- Visual glitches when seeking with the VAAPI/Vulkan acceleration
- Crash with specific draw time sequences in some time filtered diamond-tree graphs
- Memory leak with
Buffer*(count=N)
(only when no data is specified)
- Handle OpenGLES as a separate backend build-wise
- Mediacodec/Vulkan video acceleration support
- EGL device platform support (allows to support NVIDIA GPUs in headless environments)
- Compatibility with static analyzers for symbols discovery in
pynodegl
, including typing annotations - Compatibility with Vulkan devices not supporting host cached memory
- Missing exposed constants in
pynodegl
(some backend capabilities and the Wayland platform ID) - Undefined behaviour when using geometries with
Render*
nodes (Render
node is not affected) - Undefined behaviour in sRGB/linear conversions with negative colors
Buffer.block_field
is now a string corresponding to the field name instead of an integer index
- Missing package data files for
ngl-diff
- Optional
backend_config
field to thengl_config
structure (ABI break) - External OpenGL context support
ngl-diff
tool to visually compare videosUniformColor.space
colorspace configuration (sRGB, HSL, HSV)AnimatedColor
andAnimKeyFrameColor
nodesset_surface_pts
support to the Vulkan backend (Android)
- Various memory leaks
- Hooks session information sometimes not being updated in
ngl-control
handle
field from thengl_config
structureUniformColorA
(useUniformColor
instead, with a separateUniformFloat
for the opacity)
eye
,center
andup
Camera parameters can now be node- Honor NO_COLOR environment variable
- A crash happening in the VAAPI context module when both the OpenGL and Vulkan backends were enabled.
- A deadlock in
ngl-control
when specifying invalid encoding arguments
TextureView
node, useful for targeting a specific layer of a texture in RTT scenarios- Initial Vulkan support
- VAAPI/Vulkan video acceleration support
- Metal support through MoltenVK, including VideoToolbox video acceleration
- HDR tone mapping support for HLG content
- Fix OpenGL buffers and textures bindings
- A memory crash happening when resetting the context scene to NULL with the HUD active
- This Changelog