Releases: GValiente/butano
Releases Β· GValiente/butano
18.4.0
- bn::random::get_bool and bn::seed_random::get_bool added.
- bn::bitset_ref move constructor added.
- BN_CFG_BG_BLOCKS_SANITY_CHECK_ENABLED and BN_CFG_SPRITE_TILES_SANITY_CHECK_ENABLED added.
- bn::random::get_int and bn::seed_random::get_int optimized.
- BG blocks manager allocation fixed.
- bn::sprite_tiles::log_status items count fixed.
18.3.0
- bn::sprite_text_generator::generate_top_left and bn::sprite_text_generator::generate_top_left_optional added.
- bn::sprite_text_generator allows to setup the mosaic, the blending, the visibility and the camera of the output sprites.
- bn::sprite_builder::release_affine_mat, bn::sprite_builder::release_camera, bn::regular_bg_builder::release_camera and bn::affine_bg_builder::release_camera fixed.
- bn::sprite_builder, bn::regular_bg_builder and bn::affine_bg_builder documentation improved.
18.2.1
- bn::forward_list and bn::intrusive_forward_list forward iterator requirements fixed.
- bn::list, bn::intrusive_list, bn::unordered_map and bn::unordered_set bidirectional iterator requirements fixed.
- bn::deque random access iterator requirements fixed.
- bn::deque, bn::list, bn::intrusive_list, bn::forward_list, bn::intrusive_forward_list, bn::unordered_map and bn::unordered_set iterator type aliases fixed.
18.2.0
- bn::regular_bg_ptr, bn::regular_bg_builder, bn::affine_bg_ptr, bn::affine_bg_builder, bn::affine_bg_mat_attributes, bn::sprite_ptr and bn::sprite_builder support top-left coordinates for their position.
- bn::regular_bg_top_left_move_to_action, bn::regular_bg_top_left_move_loop_action, bn::regular_bg_top_left_move_toggle_action, bn::affine_bg_top_left_move_to_action, bn::affine_bg_top_left_move_loop_action, bn::affine_bg_top_left_move_toggle_action, bn::sprite_top_left_move_to_action, bn::sprite_top_left_move_loop_action and bn::sprite_top_left_move_toggle_action added.
- bn::safe_degrees_angle, bn::degrees_lut_sin_safe, bn::degrees_lut_cos_safe and bn::degrees_lut_sin_and_cos_safe added.
- bn::affine_mat_attributes::set_rotation_angle_safe, bn::affine_bg_builder::set_rotation_angle_safe, bn::affine_bg_mat_attributes::set_rotation_angle_safe, bn::affine_bg_ptr::set_rotation_angle_safe, bn::sprite_affine_mat_ptr::set_rotation_angle_safe, bn::sprite_builder::set_rotation_angle_safe and bn::sprite_ptr::set_rotation_angle_safe added.
- Position in
create
methods is now optional. - bn::intrusive_list and bn::intrusive_forward_list iterator constructors are now public.
- Real time clock (RTC) string added.
- SRAM string with link-time optimization fixed.
- Why background coordinates are relative to the center of the screen, instead of to its top-left corner? and Why sprite coordinates are relative to the center of the screen, instead of to its top-left corner? questions added to the Frequently asked questions (FAQ) page.
- Why my game runs fine on emulators but doesn't work on a real GBA with a flash cart? question improved.
18.1.0
- bn::blending::set_transparency_and_intensity_alpha added.
- bn::timer::elapsed_ticks_with_restart added.
- bn::timers::ticks_per_second added.
- BN_CFG_TIMER_FREQUENCY added.
- bn::timer overflow fixed.
- bn::degrees_lut_sin, bn::degrees_lut_cos and bn::degrees_lut_sin_and_cos optimized.
- Color palettes, sprite tiles and audio management ROM usage reduced.
- timer example added.
- Is there a way to get the bn::sprite_item used to create a bn::sprite_ptr? question added to the Frequently asked questions (FAQ) page.
- GBA pseudo-3D demo added to the README.md.
18.0.1
18.0.0
- Language standard updated to C++23.
- Old bn::hdma::start and bn::hdma::high_priority_start API deprecated.
BN_UNREACHABLE
deprecated.- Construction of bn::string and bn::string_view from
nullptr
is disallowed (thanks C++23). - bn::string::starts_with, bn::string::ends_with, bn::string_view::starts_with and bn::string_view::ends_with a
nullptr
char array is disallowed. - bn::unique_ptr is now
constexpr
. - bn::bitset and bn::string aren't
constexpr
anymore (it didn't work before). - More overloads added to bn::string construction, assignment, bn::string::assign and bn::string::append.
- bn::string::find and bn::string_view::find added.
- bn::string::contains and bn::string_view::contains added.
- bn::string::substr added.
- bn::string_view::ends_with a char array added.
nullptr
constructor and method overloads added to bn::unique_ptr.- Non-throwing
new
anddelete
supported. - bn::string_view::remove_prefix and bn::string_view::remove_suffix assert fixed.
bn::is_constant_evaluated
replaced withconsteval
.- Unnecessary
operator!=
implementations removed. - bn::regular_bg_builder::release_map, bn::affine_bg_builder::release_map, bn::sprite_builder::release_tiles and bn::sprite_builder::release_palette ROM usage reduced.
- bn::deque iterators order operators optimized.
17.9.0
- bn::hdma::start and bn::hdma::high_priority_start API improved.
- Some assert messages improved.
- Missing header includes added.
hdma_palette
example added.- Dead links updated.
- New games made with Butano added to README.md.
17.8.1
- bn::deque::erase fixed (thanks copyrat90!).
- Would I be able to sell my game made with Butano for money? question improved.
17.8.0
- H-Blank effects stop fixed.
random
example added.log
example improved.- No$gba exception setup guide added.
- How can I know what code makes my game crash? question added to the Frequently asked questions (FAQ).
- BN_LOG_BACKEND_MGBA also works with Mesen.
- bn::sram documentation improved.
- Regular backgrounds and affine backgrounds import guides improved.