Skip to content

Releases: libtcod/libtcod

2.2.2

06 Jan 11:58
2.2.2
27c2dbc

Choose a tag to compare

CMake

  • Now fully supports FetchPackage for dependency resolution. #141
  • No longer sets output directories.
  • Now only configures Vcpkg or CPack when LIBTCOD_VCPKG or LIBTCOD_CPACK is enabled.
  • LIBTCOD_UTF8PROC now defaults to ON instead of vcpkg.
  • Library dependency options now use ON/OFF values instead of find_package/disable.
  • CMAKE_DISABLE_FIND_PACKAGE_X no longer disables dependencies automatically.
  • Added LIBTCOD_DOCS to build and install HTML documentation.

Fixed

  • Mouse coordinate to tile conversions now support SDL renderer logical size and scaling.
  • Fixed out-of-bounds memory access in TCODList::reverse and TCODList copy methods.

2.2.1

05 Sep 14:42
2.2.1
ca8efa7

Choose a tag to compare

Fixed

  • Fixed compile errors on Android platforms.

2.2.0

05 Sep 12:06
2.2.0
c284e44

Choose a tag to compare

Changed

  • TCOD_sdl2_render_texture_setup now preserves texture scale mode on the target texture.

Deprecated

  • Outdated libtcod event types have been deprecated to help track their usage.
  • Event functions intended to help migrate away from libtcod events have been deprecated to indicate that they're not a permanent solution.

Fixed

  • TCODHeightMap copy constructor where width and height are different would cause an infinite loop.
  • Fixed variable names in renderer_xterm.c that caused a compilation fail with GLIBC 2.42.
  • SDL_RENDER_SCALE_QUALITY was being ignored since the change to SDL3 and is now respected again for initial scale mode.

2.1.1

02 Apr 09:50
2.1.1
92ff824

Choose a tag to compare

Fixed

  • Fixed headers which were not self-contained.

2.1.0

02 Apr 09:50
2.1.0
07cd970

Choose a tag to compare

Changed

  • TCODHeightMap is now safe to copy/move and can be swapped.

Deprecated

  • These functions have been deprecated by replacements:
    • TCOD_console_set_char -> TCOD_console_put_rgb
    • TCOD_console_set_char_background -> TCOD_console_put_rgb
    • TCOD_console_set_char_foreground -> TCOD_console_put_rgb
    • TCOD_console_put_char -> TCOD_console_put_rgb
    • TCOD_console_put_char_ex -> TCOD_console_put_rgb
    • TCOD_console_printf -> TCOD_printf_rgb
    • TCOD_console_printf_ex -> TCOD_printf_rgb
    • TCOD_console_printf_rect -> TCOD_printf_rgb
    • TCOD_console_printf_rect_ex -> TCOD_printf_rgb
    • TCOD_console_printf_frame -> TCOD_console_draw_frame_rgb & TCOD_printf_rgb
    • TCOD_console_printn_frame -> TCOD_console_draw_frame_rgb & TCOD_printn_rgb
    • TCOD_console_vprintf -> TCOD_vprintf_rgb
    • TCOD_console_vprintf_rect -> TCOD_vprintf_rgb
    • TCOD_console_rect -> TCOD_console_draw_rect_rgb
    • TCOD_console_hline -> TCOD_console_draw_rect_rgb
    • TCOD_console_vline -> TCOD_console_draw_rect_rgb
  • TCODHeightMap::copy was replaced by value assignment.

Fixed

  • Fixed crashes on screen capture.
  • Logged messages were missing a trailing newline.

2.0.0

21 Mar 03:16
2.0.0
453b6f2

Choose a tag to compare

Added

  • Cmake scripts now have the LIBTCOD_INSTALL option to disable installation. #153
  • Added TCOD_renderer_init_sdl3 which takes SDL_PropertiesID parameters.

Changed

  • Switched from SDL2 to SDL3.
  • Several functions have been moved inline, this will break the ABI.
  • Provisional gui tools moved into the tcod::gui namespace.
  • TCODConsole::data changed from protected to private.
  • Renamed utility macros such as MAX, MIN, ABS, CLAMP and LERP to use TCOD_ prefix.
  • TCOD_renderer_init_sdl2 renderer_flags parameter changed to just vsync.
  • Libtcod library versions are no longer ABI compatible. Versions indicate API compatibility instead.

Deprecated

  • TCOD_ContextParams.tcod_version is deprecated and should no longer be set.

Fixed

  • const was missing from TCOD_sys_update_char image parameter.
  • Prevent key modifiers from getting stuck when the root console is reinitialized.
  • Fixed crash on TCODPath and TCODDijkstra move operations. #159

Removed

  • Removed long deprecated libtcodpy Python package.

1.24.0

26 May 12:19
1.24.0
eb6587a

Choose a tag to compare

Added

  • New TCODImage::getSize() overload which returns a value instead of taking output references.
  • New TCODColor::genMap overload which supports constexpr.
  • TCODZip has new get and put functions with their supported types as overloads.
    This includes some types from the new API and C++ types such as std::optional<std::string> as an alternative to getting a char pointer.
  • TCODZip can now load and save paths using <filesystem> types.
  • Added tcod::ImagePtr.
  • Added functions to manually set context pixel-to-tile conversions in cases where it can't be set automatically.
  • New overloads to TCODBsp which can take function callbacks directly.

Changes

  • TCODRandom is now a movable, non-copyable object.
  • TCODConsole can now be default constructed.

Fixed

  • Constructing TCODConsole from tcod::ConsolePtr no longer causes a bad free.
  • Memory leak when loading images with TCODZip.
  • Memory leak with tileset atlases belonging to contexts.

1.23.1

09 Nov 20:14
1.23.1
168ab8c

Choose a tag to compare

Changed

  • Code Page 437: Character 0x7F is now assigned to 0x2302 (HOUSE). #134
  • TCOD_RENDERER_GLSL, TCOD_RENDERER_OPENGL, TCOD_RENDERER_SDL, and TCOD_RENDERER_OPENGL2 now alias to the TCOD_RENDERER_SDL2 renderer. #137

Deprecated

  • All color constants have been deprecated.

Fixed

  • Forced all renderers to TCOD_RENDERER_SDL2 to fix rare graphical artifacts with OpenGL. #112 #83

Removed

  • Removed GLAD dependencies.

1.23.0

22 Oct 07:19
1.23.0
8fa20ee

Choose a tag to compare

Added

  • Added new C print functions: TCOD_printf_rgb, TCOD_printn_rgb, and TCOD_vprintf_rgb. #133
  • Added a default constructor for TCODImage.

Fixed

  • Functions getting the size of an image now handle null pointers consistently.
  • Will no longer try to include <utf8proc.h> when Unicode support is disabled.

1.22.3

10 Sep 04:41
1.22.3
38110b9

Choose a tag to compare

Added

  • Libtcod can now be built without utf8proc by passing the -LIBTCOD_UTF8PROC=disable flag to CMake.

Fixed

  • Fixed double present bug in non-context flush functions.
    This was affecting performance and also caused a screen flicker whenever the global fade color was active.