Подготовил пример использованного в последней игре формата сохранения/загрузки игровых данных (заточен под Lazarus+ZenGl, но при желании можно переделать). Сам формат основан на protobuf (Protocol Buffers от Google). Из основных преимуществ - простота использования в коде и возможность расширения файла данных без страха потери совместимости. Так например ваша программа версии 1, может поднять сохранение из версии 2 (новые части сохранения которые появились в v2 просто проигнорируются). Также версия 2 спокойно поднимет сохранение версии 1. Если кратко, то все данные разбиваются на поля, каждое поле имеет свой ID и размер. В коде при считывании поля с неизвестным ID оно просто игнорируется, если же каких-то полей не хватает, то это также проигнорируется.
Показаны сообщения с ярлыком Программирование. Показать все сообщения
Показаны сообщения с ярлыком Программирование. Показать все сообщения
пятница, 4 апреля 2014 г.
Разработка адаптивного графического интерфейса для мобильных игр
четверг, 19 декабря 2013 г.
Иерархический поиск пути
Для разработки небольшой компьютерной игры зачастую применяются базовые
алгоритмы поиска пути (алгоритм Дейкстры, А*), которых вполне достаточно
для игрового поля не слишком больших размеров. Однако как же решить
задачу о поиске пути на громадных игровых пространствах в играх жанра
RTS или RPG? Ведь в виду значительного потребления памяти и ресурсов
процессора базовые алгоритмы не подходят. О решении этой проблемы (а
также нескольких других) и пойдет речь дальше в статье.
понедельник, 18 ноября 2013 г.
О разработке небольшой игры с помощью Lazarus
После относительно недавнего релиза Lazarus 1.0, захотелось опробовать эту IDE на практике. Так появилась идея написать игру. Из основных требований — она должна быть несложной, с небольшими затратами времени на ее реализацию. Ну и конечно же, ее написание и сам геймплей должны быть достаточно увлекательными процессами, даже для меня как ее создателя.
Что ж, пожалуй лучшим способом добиться поставленных целей, являться высокий уровень случайности, что бы параметры и поведение игры было трудно точно спланировать. Ну и конечно спонтанность в разработке, когда наперед ничего конкретного не планируется.
Расширяем функциональность клавиатуры
На сегодняшний день производители клавиатур предлагают нам довольно широкий выбор самых различных вариантов обозначенных устройств ввода. От расширенных версий с дополнительными кнопками для большего удобства управления компьютером, до версий с урезанным количеством клавиш, направленное, кхм… на все то же увеличение удобства. Что ж, предлагаю взглянуть на вопрос улучшения работы с клавиатурой не столько с аппаратной точки зрения, сколько с программной.
Подписаться на:
Сообщения (Atom)

