GameMaker: Studio Early Acces 1.99.55

Список изменений:

Изменения по сурфейсу приложения

  • КРИТИЧЕСКОЕ ИЗМЕНЕНИЕ: Сурфейсы теперь наращиваемые (stackable, работают как стек). Это означает, что каждое surface_set_target() ОБЯЗАНО иметь закрывающий вызов surface_reset_target(). Игнорирование этого требования приведет к ошибке во время выполнения.
  • Новая встроенная переменная application_surface, содержащая указатель на сурфейс приложения.
  • Позволяет делать корректировку соотношения сторон на всех платформах.
  • window_set_size() больше не влияет на разрешение/масштабирование игры. Теперь эти свойства контролируются через application_surface и surface_resize().
  • Добавлено новое демо, которое показывает переход между сценами, демонстрируя преимущества нового application_surface.
  • ПРИМЕЧАНИЕ 1: всё перечисленное выше пока что не доступно на HTML5! (Будет реализовано в следующей версии EA)
  • ПРИМЕЧАНИЕ 2а: с этой системой, захват области экрана в данный момент не работает на мобильных платформах, поэтому вы не можете воспользоваться get screen_save() или draw_getpixel() в этой версии.
  • ПРИМЕЧАНИЕ 2б: также знайте, что, поскольку теперь есть разделение размеров GUI и application_surface, то, если они не 1:1, вы не сможете захватывать данные через draw_getpixel(), как делали в предыдущих версиях, особенно, если есть корректировка соотношения сторон. Возможно, что вам придётся скорректировать свои значения.



Новые функции

  • timeline_clear() – полная очистка таймлайна
  • timeline_moment_add_script() – добавить вызов скрипта в нужный момент таймлайна
  • timeline_size() – возвращает размер таймлайна, число моментов
  • timeline_max_moment() – возвращает максимальный момент в таймлайне
  • buffer_get_address() – получить адрес основной памяти в буфере
  • gml_release_mode() – переключение режима публикации (релиза) (в этом режиме делается меньше проверок на ошибки)
  • tile_get_count() – получить количество тайлов
  • tile_get_id() – получить id нужного тайла
  • tile_get_ids() – получить id всех тайлов
  • tile_get_ids_at_depth() – получить id всех тайлов с заданной глубиной
  • angle_difference() – получить разницу между двумя углами
  • draw_roundrect_ext() – рисование прямоугольника со скруглениями
  • draw_roundrect_color_ext() – рисование прямоугольника со скруглениями
  • window_device() – возвращает указатель на окно устройства (D3D Handle в Windows)
  • dsin(x),dcos(x),dtan(x),darcsin(x),darccos(x),darctan(x),darctan2(x) – тригонометрические функции, работающие с градусами
  • mp_grid_get_cell() – получение состояния клетки из mp_grid
  • is_ptr – возвращает true, если переменная является указателем (ПРИМЕЧАНИЕ : функции window_device()window_handle() и get_texture теперь возвращают указатель, а не число)
  • device_mouse_x_to_gui(), device_mouse_y_to_gui() – получение координат мыши в пространстве GUI
  • surface_resize() – позволяет изменять размер сурфейса (без сохранения содержимого)
  • application_get_position() – получение позиции скорректированной с учётом соотношения сторон области внутри текущего окна
  • ds_list_add(), ds_queue_enqueue(), ds_stack_push() – изменения, позволяющие задавать множество значений
  • point_in_rectangle(), point_in_triangle(), point_in_circle() – функции проверки вхождения точки в заданный графический примитив
  • rectangle_in_rectangle(), rectangle_in_triangle(), rectangle_in_circle() – функции проверки вхождения прямоугольника в заданный графический примитив



Изменения в отладчике

  • Расширен тайм-аут связи для более надёжного соединения
  • Новая иконка
  • Добавлено отображение стека вызовов
  • Добавлено отображение списка всех экземпляров
  • Добавлено отображение выбранного экземпляра (только для Windows desktop платформы)
  • Диалоги на целевой платформе больше не прерывают отладчик, поэтому связь не теряется
  • Теперь происходит остановка при обнаружении ошибки на целевой платформе
  • Организация дерева ресурсов, каталоги и т.п. теперь отражается в отладчике
  • Добавленная частичная выборка для больших структур/массивов. ПРИМЕЧАНИЕ: в данный момент не доступно на HTML5!



Изменения в Студии

  • Объем потребляемой памяти был существенно уменьшен (приблизительно на 50%) – графика загружена не все время, а только при обращении к ней (сообщите нам о любых проблемах, которые заметите)
  • Добавлены настройки соотношения сторон в платформы, где их не было



Изменения в компиляторе

  • Добавлены новые способы доступа (аксессоры) к картам, сеткам и спискам, а также доступ к массивам по ссылке (не создаётся копия массива при записи)
  • Все функции, содержащие слово “color”, теперь имеют синоним с написанием “colour” (идентичная функция, но с корректным написанием). Вся документация и система завершения строки исправлены на “colour”



Изменения в раннере

  • http_request() теперь понимает бинарные буферы
  • На iOS функция show_message() не ждала реакции пользователя, если запуск был произведён из Студии. Исправлено.
  • Networking async event теперь передаёт номер порта в карту с ключом “port”
  • Steam Workshop uploads из Early Access 1.99.44 необходимо загрузить повторно в связи с изменениями формата файла



И, конечно же, исправления множества ошибок.

Leave a Reply

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

The reCAPTCHA verification period has expired. Please reload the page.