Skip to main content

2026

Table of Contents

July 2026

Breaking Changes

  • IImageSaver::saveToFile() now takes a reference to a IFile instead of a nctl::UniquePtr to it

New Features

  • Added an SDL3 and a Qt6 backend for window and input events on all supported desktop platforms

Improvements

  • The version of the integrated ImGui has been updated to v1.92.9
  • Added support for loading and saving QOI image format files
  • IImageSaver interface class can now save an image in a memory buffer

Fixes

  • Fixed an issue with anchor point on scaled or zero-sized nodes
  • Fixed a SIGILL crash when initializing the job system on MinGW
  • Various fixes to the Qt5 backend (FBO transparency, deprecated methods, mouse wheel amount, gamepad button events processing)
  • Various text input fixes in ImGui and Nuklear backends

June 2026

New Features

  • Added an option to rendered batches of regular sprites using instances and vertex attributes
    • Instanced batches uses less CPU and don’t suffer from UBOs size limitations

Improvements

  • Uniform blocks in vertex shaders use now a lot less memory, as a result batches using UBOs can be more than twice as bigger

Fixes

  • Fixed version checks before some JNI calls and restored working on old Android devices (tested on Oreo)

May 2026

Breaking Changes

  • Renamed all occurrences of “FullScreen” to “Fullscreeen” and of “fullScreen” to “fullscreen” in all interested methods
  • Renamed “full_screen” to “fullscreen” in the Lua app_configuration table
  • Renamed nctl::PointerMath::subtract() to distance() when used between pointers
  • Most app configuration environment variables (AppCfg EnvVars) have been renamed

Improvements

  • The values in the AppConfiguration C++ class and the Lua app_configuration table have been splitted in substructures/subtables
  • The version of the integrated ImGui has been updated to v1.92.8

April 2026

Improvements

  • Added support for Lua 5.5
  • The version of the integrated ImGui has been updated to v1.92.7

March 2026

Breaking Changes

  • The overloaded contains() method with the output argument has been removed from the hashmap containers

Improvements

  • Refactor all iterators to respect STL-style invariants
  • Add support for std::initializer_list to nCTL containers
  • Add a new Pair and Span classes that works similarly to their STL counterparts
  • Fix self-assignment with StaticHashMap and StaticHashSet classes
  • It’s now possible to access some nCine and project version strings as numbers in the VersionNumbers struct
  • The fast-hash algorithm has been improved and it’s now used by default for all hashmap and hashset classes

February 2026

Breaking Changes

  • Renamed ITextureLoader and ITextureSaver to IImageLoader and IImageSaver
    • Png and WebP sub-classes have also been Renamed

Improvements

  • The version of the integrated ImGui has been updated to v1.92.6
  • Added a Lua utility class to manipulate non-float color objects (nc::Color class)

January 2026

Improvements

  • Dependency libraries are now copied in all nCine and project artifacts for MinGW
  • Add a new Optional class to nCTL that works similarly to std::optional