воскресенье, 4 сентября 2011 г.

K5Engine. Релиз третей версии движка.

Вот и выложена новая версия движка.
Скачать можно по этой ссылке: K5Engine3

Версию проскочили, так как постепенно накопилось слишком много изменений, которые во второй версии было накладно реализовывать (на ней делаются делаются проекты). Поэтому и было принято решение сразу сделать релиз третьего движка.

Изменений много, множество систем было переработано, некоторые были исключены из движка, некоторые добавлены. Так же добавлен модуль с открытым кодом расширений движка K5EngineSourceTemplates.
Вот список наиболее важных.
1. Убран один графический объект - SpriteBank. С одной стороны он удобен в работе, с другой слишком усложняет сопутствующую логику.
2. Уменьшилось количество графических элементов, угол наклона превратился в унифицированный класс-значение.
3. Убраны отдельные классы-виеверы, их код унифицирован и разделён на отдельные объекты.
4. Оболочка для freetype исключена из движка и вынесена в отдельное расширение.
5. Классы-действия кардинально переработаны, теперь вместо деления на два типа есть один унифицированный базовый класс. Соответственно все ранее доступные классы-действия заменены новыми.
6. Введена система узлов данных, позволяющая создавать описания сущностей движка и игровой логики, сохранять и загружать их из файлов. Xml-класс для работы с узлами данных доступен в K5EngineSourceTemplates.
7. Полностью убраны реализации звуковой системы.

Это не окончательный релиз, движок будет постепенно дорабатываться.
В данный момент доступна библиотека для компилятора mingw, соответственно платформа одна - Windows. Однако по просьбе движок может быть собран и на другом компиляторе (например MS compiler) и под систему Linux.
Так же проводится работа по портированию движка на MacOS, IOS и Android платформы.

Уроки, документация и статьи так же будут постепенно готовиться и выкладываться.
В будущем возможно открытие кода движка, но пока что единого мнения в команде разработчиков о целесообразности открытия кода нет.

среда, 15 июня 2011 г.

Анонс движка K5Engine 3

Всем доброго времени суток.

Это небольшой анонс того, что следует ожидать в новой версии движка.

Так вышло, что новая версия движка, планирующаяся ранее к выходу, уже и не будет выложена.
В процессе работы она переросла версию с второй до третей и собственно, будет выкладываться уже третья версия.

Ключевые изменения:
- Разнообразные улучшения в ядре движка и расширение функционала.
- Убраны банки спрайтов, они будут заменены на логический объект Group.
- Изменена система действий, обычные действия вообще убраны, остались только событийные с возможностью принимать пустую структуру события. То есть теперь есть единый механизм действий, без разделения на событийные и одномоментные.
- Переработана библиотека K5EngineExtensions, изменён состав действий, входящих в неё, так же добавлены инструменты для генерации спрайтов.
- Убрана реализация вывода звука с помощью Bass и Audiere, скорее всего звук будет выводиться с использованием PortAudio.

Так же планируются некоторые организационные изменения в выходе версий движка, будет сформировано SVN хранилище с открытым кодом, расширяющим функционал, так же будет доступно хранилище с постоянным обновлением сборки движка.
Плюс добавятся новые статьи про использование движка и будут подкорректированы старые.

Новая версия ориентировочно ожидается в августе-сентябре, возможно раньше, всё зависит от загруженности работой.


вторник, 15 февраля 2011 г.

Вышла новая версия игрового движка от 13.02.2011

Немного запоздалая новость. Но всё же.

Что нового в этой сборке:
Изменения коснулись прежде всего библиотеки K5EngineExtensions:
- Состав ActionSystem остался тот же, но в будущем действия вида "ActionChange(тип объекта)(параметр)" (например ActionChangeSpriteColor) будут заменены на универсальные, подходящие для всех доступных графических объектов.
- ColisionSystem была исключена из расширений.
- LibTools не изменилась.
- TinyXmlToolsSystem исключена из расширений. Это сделано для того, что бы избавиться привязки к конкретной библиотеке. Вместо неё теперь будет несколько более продвинутая система.
- Добавлена UISystem в данный момент в неё входят:
UISimpleButton - простая кнопка, способная работать с спрайтом или спрайт-банком.
UIColisionChecker - класс для отслеживания положения и кликов курсора по отношению к объектам (спрайтам или спрайт-банкам).
- Добавлена DataNodeSystem. Она предназначена для построения иерархических описаний объектов движка, не зависимых от библиотек ввода-вывода информации. Теперь описание объекта движка, например того же спрайта, строится при помощи нового класса - DataNode, далее если нужно произвести запись в xml, делается декодер, который формирует из структуры DataNode xml код. Чтение и декодирование xml происходит так же, их файла читается xml и строится структура DataNode, которая уже будет прочитана и по её описаниям будут созданы спрайты сцены, событийные действия или та или иная логика.
В данный момент в DataNodeSystem входят такие классы:
DataNode - класс для построения иерархических описаний
DNEngineDataConverter - конвертер из/в DataNode и типы движка.

Изменения, которые точно попадут в следующую версию:
- Камера научилась масштабированию картинки
- Новые классы для работы с нодами данных.
- Изменения в действиях, унификация некоторых итераторов

Следующая версия ожидается приблизительно через два месяца. 

воскресенье, 2 января 2011 г.

Вышла новая версия игрового движка от 02.01.2011

Вышла новая версия движка.

В основном это разнообразные добавления и исправления в основном модуле, плюс библиотека расширений.
Более подробно описано здесь: gamedev.ru

А так же, всех с наступившим Новым Годом, удачи, счастья, здоровья в этом году :)

воскресенье, 29 августа 2010 г.

3D Модель робота

Начал делать графику к будущему проекту, первые наработки уже есть.
Набросок:
 Рендеры текущей модели:

В вселенной игры это простой дешёвый робот для промышленности, вместе с кучей возможных вариантов обвеса используется в строительстве, на производствах, лесохозяйстве и куче других мест. Естественно благодаря его доступности есть и куча военных модификаций, как кустарных, так и выполненных на высоком технологическом уровне.

То есть что это будет значить для игрока: главный плюс - дешёвый и доступный повсеместно, на этом все преимущества по сравнению с серийными боевыми моделями заканчиваются :)

Далее нужно внести ещё некоторые изменения в саму модель, добавить текстуры, анимацию и можно на его базе начинать делать первые наработки в игровой механике.

Небольшое обновление:

среда, 25 августа 2010 г.

Первая версия движка под Linux

Первое приложение из уроков удачно собрано в Linux-е. Как и предполагалось, практически никаких изменений для запуска движка на этой системе не потребовалось :)
Для этого используется новый shell-модуль  - SDLShell, который после некоторой доработки будет добавлен в общий архив движка, так же как и скомпилированная библиотека, которая будет работать в Linux-е.

Обновление:
Готова новая сборка движка, выложена там где и раньше - GameDev

пятница, 13 августа 2010 г.

Четвёртая статья по игровому движку

Добавил новую статью по игровому движку: Система событий движка
В ней рассказывается, как использовать систему действий для построения логики игры. Плюс добавлен новый урок под номером девять.

Так же обновился сам движок, добавлен новый функционал, объект текста приведён по своей структуре ближе к другим графическим объектам. Но самое главное - разделён код движка и библиотек-оболочек, теперь можно использовать только тот тип рендера из движка, который нужен в приложении.

Что не вошло в эту сборку: сделаны первые шаги для реализации устройства на базе SDL, фактически осталось сделать только преобразование событий из одной системы в другую, и будет готов порт под Linux системы и очень близок порт под MacOS. Плюс некоторые изменения в коде, связанные с восстановлением DirectX устройства.

По планам - отказался от реализации класса для получения поддерживаемых разрешений монитора, по крайней мере в ближайшее время данный функционал не будет реализовываться.