Что нового
Game Maker 8.0 содержит множество изменений по сравнению с версией 7.0. Ниже приведены самые важные из них.
Несовместимости
В текстовых экранных заставках больше нельзя показывать изображения. Однако, можно использовать заставки с веб-страницей, отображающие полноценные html документы, содержащие изображения и т. д.
В фукнции, относящихся к спрайтам и фонам было добавлено множество исправлений. Это послужило следствием того, что Game Maker использует совершенно новый механизм для этих ресурсов. Если ваша игра многократно использует функции, загружающие или сохраняющие изображения на лету, рекомендуется продолжить пользоваться версией 7.0.
Если вы использовали пакеты расширения, вам придётся их установить заново.
Несколько изменений коснулись механизма работы тайм-лайнов, что может послужить причиной несовместимости. В частности, назначение тайм-лайна и его запуск теперь разные вещи.
Исправлен серьёзный баг, из-за которого при столкновении двух объектов в каждом из них событие столкновения вызывалось дважды. Поэтому некоторые игры из-за этого могут функционировать некорректно.
Новости
При запуске Game Maker по умолчанию показывается страница новостей. Здесь можно будет узнать информацию о релизе новых версий, новых ресурсов, а также о конкурсах, геймдизайне и прочем. Новости показываются только один раз за день. В Pro Edition их можно выключить совсем. Вы всегда можете просмотреть новости через меню Help и регулярно проверять наличие новой важной информации о Game Maker.
Уроки
В Game Maker включен встроенный механизм просмотра уроков для начинающих. Он показывается в отдельной панели в правой части экрана. Продвинутые пользователи могут отключить его, если они больше не хотят видить урок. Для комфортного просмотра уроков, Game Maker по умолчанию открывается развернутым на весь экран. Однако, после закрытия окна настройки сохраняются и вы можете сами установить нужный режим.
Фоны и спрайты с альфа-каналом
Новая версия Game Maker использует задние фоны и спрайты с альфа каналами (прозрачности). Это делает возможным отрисовку более приятно выглядящих спрайтов. Поэтому теперь могут корректно использоваться PNG файлы с такой инфомацией. Редактор спрайтов и изображений полностью переписан, добавлено множество новых возможностей и эффектов. Новый загрузчик файлов спрайтов позволяет предварительно просматривать анимацию. Также в дистрибутив Game Maker включено множество высококачественных спрайтов, которые вы можете свободно использовать в своих играх.
Улучшенная проверка столкновений
Доступно намного больше установок для проверки стокновений. Например, вы можете использовать окружность, как модель для обработки стокновений, а также расширены настройки стандартной прямоугольной маски. Каждый кадр спрайта может иметь отдельную маску, которая кроме этого может устанавливаться автоматически в зависимости от альфа канала.
Заставочные экраны
Новая функция splash_show_web(url,delay) даёт возможность использовать веб-страницы в виде экранных заставок. Для этого можно использовать и локально расположенные html файлы. Это предоставляет вам удобаный механизм, например, для подробной справки к игре. Также на заставочные экраны добавлена кнопка закрытия. Кроме этого добавлено несколько новых действий для показа различных типов заставочных экранов и изменения их установок. (Старые заставки с показом видео и веб страниц были заменены новыми действиям. Но они всё равно могут работать играх, созданных на прошлых версиях G<EM>ame Maker.</EM>)
События триггера
Представлен новый тип событий: события триггера. События триггера вы определяете самостоятельно. Вы определяете ему имя и условие, написанное на GML. После этого это событие может быть использовано во всех объектах, так же как и любое другое событие. С помощью этого вы очень легко можете расширить функциональность Game Maker.
Тайм-лайны
Тайм-лайны усовершенствованы. В форму редактирования добавлены дополнительные кнопки, например, чтобы растягивать, удалять или дублировать отрезки времени. Тайм-лайны могут быть приостановлены и перезапущены, а также проиграны задом наперёд. Ещё они могут повторяться автоматически.
Импорт и экспорт ресурсов
Возможность объединения игр в новой версии заменена на более удобную систему экспорта и импорта ресурсов. Пользователь может выбрать ресурсы для экспорта в файл (.gmres). Затем они могут быть импортированы в другую игру. В принципе,для каждого имени может быть определен только один ресурс, поэтому при конфликте имен при импорте возможно выбрать опцию сохранение оригинала, сохранение обоих(не рекомендуется), замена всех или сохранение более нового ресурса. Для возможности последней опции теперь у всех ресурсов сохраняется время последнего изменения.
Переписан редактор кода
Встроенный редактор кода и скриптов польностью переписан, что сделало написание кода намного проще. Например, добавлены всплывающие подсказки с именами функций, списком аргументов, подсветка соответствующих друг другу скобок, номера строк, улучшено выделение цветом кода. Добавлена проверка ошибок на лету, отрезки кода, улучшена возможность поиска и замены.
Оптимизация
Скорость игр, которые используют код значительно улучшена. Увеличение скорости в некоторых случаях доходит до 100%. Также время загрузки игры стало меньше, чем было раньше. Аналогично и с использованием выполяемых ехе-файлов игр.
Другие изменения
Есть и некоторые другие измения и добавления. Ниже приведены некоторые из важных.
- Можно использовать высококачественные иконки для ваших игр.
- Константы теперь объявляются в собственной форме (раньше это делалось в игровых настройках). В результате они видимы при написании кода. Ещё вы можете сохранять и загружать константы из текстового файла.
- Включение файлов также редактируется в своей собственной форме, а не в игровых настройках.
- Множество визуальных исправлений.
- Добавлена функция random_range(x1,x2), irandom(x), и irandom_range(x1,x2). Последнее возвращает целочисленное значение от x до x2.
- Добавлены функции mouse_wheel_up и mouse_wheel_down.
- Добавлена функция set_application_title(title) для установки названия приложения (отображается на панели задач).
- Добавлена функция file_text_eoln().
- Добавлена переменная "только для чтения" debug_mode.
- Больше нет установки для отключения заставок или перехода в спящий режим, пока игра запущена (отключены по умолчанию).
- Добавлены функции disk_size(drive) и disk_free(drive) и переменная gamemaker_version.
- Сообщения ошибок выполнения лучше указывают на место ошибки.
- Теперь имеется возможность изменять папку для сохранения временных файлов в предпочтениях.
- ...
Исправленные ошибки
Исправлены следующие ошибки. Кроме них исправлены и некоторые менее значительные баги.
- Ошибка при запуске Game Maker на Windows Vista c Active User Control исправлена.
- Исправлен баг когда при использовании клавиши Alt поля в формах становились невидимыми на Vista.
- Исправлен баг с неотображающимися подсказками к действиям в объекте и форме редактирования тайм-лайнов.
- При открытии игры или создании новой, не задаются отдельные вопросы для каждого отрытого ресурса о сохранении изменений.
- Исправлены ошбики с точностью опрераторов сравнения в коде.
- Исправлен баг с плохим фоном у поля для Applies To в редакторе кода.
- При создании исполняемого файла теперь корректно проверяется добавлены ли комнаты.
- Заменены все комбинации Ctrl+Alt на Shift+Ctrl из-за того, что некоторые из них необходимы для раскладки клавиатуры немецкого языка. Также исправлены горячие клавиши для создания спрайтов.
- В простом режими ярлыки для скрытых ресурсов и меню не отображаются. Кроме этого спрятано меню скриптов.
- Исправлен баг с функцией window_get_color().
- Увеличено максимальное количество вершин для отрисовки 3D моделей с 1000 до 32000.
- Откорректирован баг в игнорировании z-значения для вершин моделей.
- Исправлены события Outside View и Boundary View ("за пределами вида" и "на границе вида").
- Игры теперь могут запускаться без аудиокарты(с предупреждением).
- Когда окно игры теряет фокус, события ввода/вывода, такие как нажатия клавиш очищаются.
- Исправлен и улучшен отчет об ошибках для кода создания в комнатах и экземплярах.
- room_tile_add и room_tile_add_ext теперь корректно задают цвет смешивания на белый и возвращают правильный индекс тайла.
- Теперь корректно задаётся название приложеная в зависимости от имени файла.
- Исправлен баг в draw_line_width_color при длине равной 0.
- Тайлы с отрицательным масштабом отрисовки рисуются корректно.
- Изменено чтение и запись вещественных чисел в текстовых файлах. Как разделительный знак при записи всегда используется точка. Однако, при чтении корректно читаются числа и с точкой и с запятой.
- У пустых групп ресурсов теперь нормальный значок для закрытия папки.
- Решена проблема с мерцанием дерева ресурсов.
- Функции string и string_format не прерывают программу при больших числах, а возвращают строчку ERROR.
- Длинные пути нормально отрисовываются с помощью draw_path.
- Свертывание дерева ресурсов работает корректно.
- В операторе условия IF, значение 0.5 считается итинным.
- Исправлен баг иногда возникающий при нажатии клавиши ~.
- Функция sign() корректно возвращает 0 когда аргумент равен нулю.
- В редакторе путей, при выборе комнаты, при нажатии вне меню комната больше не очищается.
- Немного увеличена форма отладки для отображения всех кнопок. Также при изменении размеров формы ширина столбца таблицы автоматически изменяется.
- Исправлен баг когда игра могла вылететь при изменении высоты окна на 0.
- Исправлен баг в ds_grid_add/multiply/set_grid_region.
- Вызов скриптов и функций расширения по умолчанию возвращает ноль, если никакое другое значение не было возвращено.
- Исправлен серьёзный баг, из-за которого при столкновении двух объектов в каждом из них событие столкновения вызывалось дважды.
- Исправлен баг в draw_text_ext с пустыми строчками (повторяющимися #) и проблема с рисованием строк содержащих пары CR-LF (при использовании многострочных строковых переменных в коде).
- Файлы "только для чтения" теперь могут использоваться для включения в файл игры без ошибок.
- ...
Автор перевода:Роман "Ka1miK" Калмыков
Источник, авторская статья перевода http://GMakers.ru.