Войти
ПроектыФорумУтилиты

WindMill 2D Game Engine (мой движок для 2D игр.)

Страницы: 1 2 Следующая »
#0
16:46, 4 июля 2010
Изображение

Windmill 2 - это простой и качественный движок для создания 2D игр любого жанра. Windmill 2 имеет обширный функционал, поэтому для использования всех его возможностей необходимы уверенные знания одного из поддерживаемых языков программирования. Базовый же функционал будет по прежнему прост и понятен для начинающих программистов, чему не в последнюю очередь поспособствует подробная документация, описывающая создание простенькой игрушки.

Функционал:
•  Отображение графики. Поддерживаются форматы: bmp, tga, png, dds, jpg.
•  Воспроизведение звука. Поддерживаются форматы: wav, ogg, частично mp3.
•  Воспроизведение видео.
•  Шейдеры.
•  Шрифты.
•  Поддержка сети.
•  Система частиц.
•  Поддержка скриптового языка Lua.
•  Упаковка ресурсов в зашифрованный архив.
•  Работа с файлами: чтение, запись, вставка.
•  Поддержка XML.
•  Создание приложений для соцсетей.
•  Еще что-то…

Скачать:

Windmill 2 преальфа1 (4 мб) – сдк для с++ программистов. Пока поддерживается только этот язык. Включает недописанное руководство разработчика и 10 уроков. Преальфа пока содержит не весь, указанный выше функционал. Также и уроки пока охватывают лишь базовые возможности, исходный код примеров не содержит комментариев.

Небольшая тест-демка (1 мб) для проверки работоспособности движка. Это простая игрушка, создание которой описано в руководстве.

[img = http://fabermun.at.ua/_fr/w2/i1.png]



Windmill 1
+ Показать

#1
17:04, 4 июля 2010

nilrem
> имеет и довольно высокую надежность.
Приложению не удалось запуститься, поскольку d3dx9_40.dll не был найден...

Запускал на WinXP, офисный комп. Алаваровские на нём работают.

#2
17:09, 4 июля 2010

sb3d
> > имеет и довольно высокую надежность.
> Приложению не удалось запуститься, поскольку d3dx9_40.dll не был найден...

Не путай надежность и совместимость.
Ну нет у меня другого СДК(

#3
17:20, 4 июля 2010

nilrem
> Не путай надежность и совместимость.
> Ну нет у меня другого СДК(

У меня - крашиться...
И все-таки.. как на этом фрэймворке игры делать? Если они dll не находят?

#4
17:40, 4 июля 2010

MNAndrew
> И все-таки.. как на этом фрэймворке игры делать? Если они dll не находят?

Ушел со слезами искать древние либы с инклюдами.

#5
18:59, 4 июля 2010

Только что запустил под Линуксовый Вайн, как и ожидалось, не пошло.

#6
21:40, 4 июля 2010

Планируется ли интеграция физических движеков (бох 2д) и хелпер классов?

#7
22:25, 6 июля 2010

nilrem
> Ушел со слезами искать древние либы с инклюдами.

Как оказалось, использование древнего СДК невозможно, поскольку двиг воспроизводит звук через xAudio2, появившийся только в конце 2007 года.

Tpak
> Планируется ли интеграция физических движеков (бох 2д)

Физика пока не планируется, при желании ее можно прикрутить и самостоятельно (надо будет как-нибудь попробовать)

Tpak
> ... и хелпер классов?

Смотря что понимать под хелпер классами.
Если расширение возможности уже существующих, так это невозможно, поскольку существующие спрятаны глубоко внутри движка и доступны не будут.

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

#8
22:38, 6 июля 2010

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

#9
23:51, 6 июля 2010

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

Тогда какой смысл в закрытом движке с сомнительной реализацией и неработоспособного без d3dx-библиотек?

#10
12:34, 30 июля 2010

Движек развивается.
Демка демонстрирует новые  возможности в версии 0.90.
Это поддержка полноэкранного режима, рисование линий и рисование фрагмента изображения.

Демо новых возможностей v0.90 (0,2 мб)

Изображение

Вообще Windmil Framework версии 0.88 альфа  можно скачать здесь (3,6 мб) .
На подходе версия 0,90

#11
15:28, 30 июля 2010

По демкам:
- В демке с продвинутой анимацией если зажать одно направление движения, не отпуская его, нажать второе, и после этого отпустить клавишу первого направления, герой продолжит идти в первом направлении. На лицо косяк либо в коде демки, либо в самом двигле. По нажатию на esc герой продолжит двигаться в последнем направлении, но без анимации О_о
- Демка со звуком (которая №7) никак не хочет закрываться корректно по крестику (Win7). Две другие демки со звуком работают нормально

По движку:
Глянул поверхностно, выскажу то, что сразу бросилось в глаза

>Файлы, содержащие шрифты и их описание должны находится рядом с исполняемым файлом
>--то же самое про курсоры--
Это имхо какое-то жестокое ограничение. Почему нельзя грузить и то и другое по относительному пути из любого места?

>Стороны в разрешение графики должны быть кратны степени двойки. (8, 16, 32, 64, 128, 256, 512 и т.д.)
Терпимо конечно, но на сколько я знаю, большинству нормальных движков на это пофиг (они вроде как сами достраивают картинку прозрачным цветом до ближайшей степени)

>Имена файлов ресурсов (графика, звуки) должны быть уникальны, и ни в коем случае не должны повторяться.
Тоже совершенно не ясное ограничение. Я так понял, что у тебя при запуске движок сразу грузит _все_ ресурсы из жестко заданной папки с ресурсами. Если это так, то это СОВСЕМ не гуд, догадаешься почему?

>Позаботьтесь, чтобы файл с изображением (например zazaka.png) находился в Рабочем каталоге
Уже сказал по этому поводу, почему не разрешить хранить ресурсы так, как удобно пользователю движка?

Далее, я так понял, в любой момент времени загружен может быть только один шрифт? Если да, то это тоже очень не удобно

Функция CreateAnimation() имхо содержит кучу избыточных входных данных. Размеров X*Y одного кадра достаточно, чтобы узнать их количество в строках и столбцах.

Про анимацию также хотелось сказать следующее: лично мне удобнее иметь возможность выводить любой кадр по моему желанию по его номеру. Это даст:
1) Возможность нефиксированной задержки между кадрами
2) Отпадает необходимость "продвинутой анимации" - храни в одном файле хоть сотню анимаций, выводи только нужные кадры и всё.

Также мне показалось очень не удобным использование в качестве параметров функций реальных имен файлов. Имхо удобнее оперировать некой структурой (назовем её например Sprite) типа такого:
Sprite spr = LoadTexture("/Data/mySprite.tga");
...
Draw_Sprite(spr, 100, 100, //ну и дальше параметры);

Всё вышесказанное имхо, сори за многабукаф

#12
16:00, 30 июля 2010

Tortugas
> В демке с продвинутой анимацией если зажать одно направление движения, не
> отпуская его, нажать второе, и после этого отпустить клавишу первого
> направления, герой продолжит идти в первом направлении. На лицо косяк либо в
> коде демки, либо в самом двигле. По нажатию на esc герой продолжит двигаться в
> последнем направлении, но без анимации О_о

Код демки простой. Анимация запускается по нажатию конкретной клавиши. Но при этом спрайт перемещается при нажатии любой.

Tortugas
> - Демка со звуком (которая №7) никак не хочет закрываться корректно по крестику
> (Win7). Две другие демки со звуком работают нормально

Там Sleep(45000)))))

Tortugas
> > тороны в разрешение графики должны быть кратны степени двойки. (8, 16, 32,
> > 64, 128, 256, 512 и т.д.)
> Терпимо конечно, но на сколько я знаю, большинству нормальных движков на это
> пофиг (они вроде как сами достраивают картинку прозрачным цветом до ближайшей
> степени)

Согласен. Поэтому в версии 0,90 этого ограничения нет. Как можно видеть в последней демке, размер дракона 180х140.

Tortugas
> Я так понял, что у тебя при запуске движок сразу грузит _все_ ресурсы из жестко
> заданной папки с ресурсами. Если это так, то это СОВСЕМ не гуд, догадаешься
> почему?

Возможность грузить все ресурсы из папки есть, но не в этом дело.
1. Менеджер ресурсов сам ищет файл в структуре каталогов.
2. Имя файла является также идентификатором загруженного ресурса, чтоб ресурс не грузить повторно

Tortugas
> > озаботьтесь, чтобы файл с изображением (например zazaka.png) находился в
> > Рабочем каталоге
> Уже сказал по этому поводу, почему не разрешить хранить ресурсы так, как удобно
> пользователю движка?
Это цитата из туториала. Данная рекомендация призвана облегчить жизнь программисту.
Потому что иначе Визуал Студио этого файла не найдет, или же придется писать очень шаманский путь, который в результате не будет совпадать с истинным расположением файла ресурса относительно расположения ехе.

Tortugas
> Функция CreateAnimation() имхо содержит кучу избыточных входных данных.
> Размеров X*Y одного кадра достаточно, чтобы узнать их количество в строках и
> столбцах.
По-моему там всего один спорный параметр "количество кадров в одном ряде", но его использование надежнее.

Tortugas
> сори за многабукаф
ниче, все ок.

#13
17:15, 30 июля 2010

nilrem
лучше бы тулзы написал под уже готовый двиг, было бы больше пользы :)

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

#14
20:27, 30 июля 2010

nilrem, у меня DirectX нет, зато есть Linux;
однако посмотреть очень интересно.
пожалуста, скиньте пример кода, коротенький.

Страницы: 1 2 Следующая »
ПроектыФорумУтилиты

Тема в архиве.