Po ponad pół roku oczekiwania, aktualizacja miesięczna 2024.14 (chociaż bardziej prawidłowo byłoby 2025.10) jest w końcu dostępna!
Wszystkie zmiany opisano w release notes: releases.gamemaker.io/release-notes/2024/14
Ponieważ pełna lista zmian obejmuje ponad 1000 pozycji, dlatego (poza bugami) wymienię tylko najważniejsze:
- nowe funkcje application_surface_is_draw_enabled(), keyboard_virtual_set_position(), layer_particle_get_id(), layer_particle_get_instance(), layer_tilemap_set_colmask(), layer_tilemap_get_colmask(), sphere_is_visible(), vertex_buffer_exists(), vertex_format_exists()
- CVE-2025-12501 w network_create_server(), powodujący wywalenie aplikacji spreparowanym pakietem
- wsparcie UI layerów w HTML5
- asset browser nie tworzy już domyślnie folderów (ale można to przywrócić w preferencjach)
- można wybrać folder eksportu audio (tylko streamowane dźwięki)
- sprite SVG mogą mieć teraz kilka klatek; można ustawić im cache
- eksport GX.games (WASM) obsługuje teraz pluginy JS
- show_debug_overlay() obsługuje pada (opcjonalny argument)
- można zmienić maskę kolizji dla tilesetów
- na Androidzie można wyrównać gry do 16KB (najnowsze wymaganie google)
- instance_change, position_change dostały status deprecated. Nie będą wspierane w GMRT i aby działały, należy je włączyć w ustawieniach projektu
- dodatkowa opcja Use legacy DXGI_SWAP_EFFECT_DISCARD w ustawieniach projektu, dla gier które korzystały z przeźroczystego okna, również włączana w opcjach projektu (powoduje to konflikt z optymalizacją gier na Win 11)
- dodatkowa opcja dla zegara odmierzającego klatki obrazu, tm_countsyncs_winalt
- pierwsza, pusta grafika w automatycznych tilesetach może być teraz używana
- (de)aktywacja instancji korzysta teraz z opcjonalnego parametru który określa, gdzie ma zachodzić (de)aktywacja - w całej grze, roomie lub UI
- funkcje matrix_... mogą teraz przetwarzać istniejącą tablicę, zamiast zwracać nową
- gc_target_frame_time() pozwala spowolnić garbage collector
- linie i vertexy są teraz rysowane bez offestu 1px; opcja projektu Legacy primitive drawing behaviour pozwala włączyć/wyłączyć stare (poprzednie) zachowanie
- przy włączonym CE2, w projekcie można przygotować plik README który otworzy się przy pierwszym odpaleniu projektu
- tworząc nowe zasoby, prefix będzie brany z ustawień Feathera
- 190 poprawek dla CE2
- poprawki wydajności Room Editora w IDE
- mapowanie klawiszy w IDE powinno lepiej działać
- skalowanie DPI powinno lepiej działać w IDE
- lepsze wyświetlanie usuniętych assetów jeśli zaznaczono opcję nie kompilowania nieużytych assetów
- niektóre komunikaty kompilatora nie były zwracane ze względu na zły format, teraz będą się pojawiać co pozwoli na rozwiązanie niektórych błędów
- poprawiono bazę padów; poprawiono mapowanie przycisków które mają ujemną oś
- post_textures.bat ma teraz dostęp do zmiennych środowiskowych (jak reszta .batów)
- nadpisywanie sprite obiektu w room editorze
Więcej informacji:
gamemaker.io/en/blog/release-2024-14
releases.gamemaker.io/release-notes/2024/14
Linki do ciekawych stron
string_width() w eksporcie na html daje NaN więc mam pierwszego buga
Całą noc siedziałem i się wkurzałem, czemu UI mi nagle ssie. :I
Zgłaszaj czym prędzej! Bo tak zostanie na kolejne pół roku, bo LTS tylko co 6 miesięcy będzie miec update (ale nadal będą wersje beta co kilka tygodni) 
Edit: już naprawione 2 dni temu, będzie w hotfixie i w becie: github.com/YoYoGames/GameMaker-Bugs/issues/12468 .
No ja to od razu zgłosiłem. Póki co poradziłem sobie inaczej.
//// Zamiennik string_width() dla HTML5 - czekać na fixa
function string_w(_text) {
// Próba użycia oryginalnej funkcji (działa na PC, mobile?)
var test = string_width("M");
if (test > 0) { // jeśli nie zwraca NaN
return string_width(_text);
}
// FALLBACK - ESTYMACJA
var current_font = draw_get_font();
var font_height = font_get_size(current_font);
// Współczynniki szerokość/wysokość - manual
var width_ratio = 0.6;
switch(current_font) {
case fn_menu_10:
width_ratio = 0.55;
break;
case fn_menu_12:
width_ratio = 0.6;
break;
case fn_menu_13:
width_ratio = 0.62;
break;
default:
width_ratio = 0.6;
}
var char_count = string_length(_text);
var estimated_width = char_count * font_height * width_ratio;
return estimated_width;
}
mam różne fonty i dla dobrego looku trzeba manualnie czasem to radio określić.
Najnowsze wersje GameMakera:
wydana 8 dni temu
wydana 339 dni temu
wydana wczoraj
Jak znajdę czas 
