Название: o2
Краткое описание: удобный движок+редактор для 2D игр и мультимедиа приложений
Цель проекта: сделать современный, удобный инструмент для разных слоев разработчиков, от инди до крупных студий
Github: https://github.com/zenkovich/o2
Платформы:
Разработка - Windows, OSX
Запуск проектов - Windows, OSX, iOS, Android
Отличительные особенности:
- 2D
- производительность
- скорость разработки
- расширяемый редактор а-ля Unity3D
- все необходимые инструменты в одной экосистеме
- С++
- LUA
Текущий прогресс:
Ближайшие планы:
- доработка системы частиц
- полировка редактора
Долгосрочные планы:
- порты iOS, Android
- игра
anz
Какие поддреживаются платформы?
Что в качестве бекенда для рендера (GAPI)?
UI редактора на чём сделан?
Таймлайн на менер флэша будет?
Встроенный редактор кода имеется?
Alprog
> Какие поддреживаются платформы?
Сейчас только Windows, в демо версии будет Android, в релизе (если такой будет) Windows, Mac OSx, iOS и Android
> Что в качестве бекенда для рендера (GAPI)?
OpenGL. На мобильных планируется OpenGL ES, возможно Direct X для винды
> UI редактора на чём сделан?
Свой UI, движковый. Вобщем-то редактор и есть проект на движке
> Таймлайн на менер флэша будет?
Да, редактор анимации будет и планируется очень похожим на Flash, Spine и немного своих идей. Вообще стараюсь сделать анимацию простой как из кода так и из редактора
> Встроенный редактор кода имеется?
Нет, и, я думаю, не будет. IDE для редактирования кода сейчас много и делать свое вряд ли имеет смысл для С++ и С#
anz
Пощупал редактор, очень неплохо выглядит. Но мне кажется, функционал редактора лучше писать на C#, это даёт больше возможностей для расширения. В юнити редактор легко модифицируется и расширяется пользовательским кодом, без перекомпиляции самого редактора.
> iOS и Android
На чём будет работать С#? На xamarin?
shda
> Пощупал редактор, очень неплохо выглядит. Но мне кажется, функционал редактора
> лучше писать на C#, это даёт больше возможностей для расширения. В юнити
> редактор легко модифицируется и расширяется пользовательским кодом, без
> перекомпиляции самого редактора.
Для этих целей я буду делать систему плагинов. Ну и расширение редактора так же будет доступно из C#.
На С++ это будет делать несложно, т.к. есть система рефлексии
> На чём будет работать С#? На xamarin?
Да, пока что не вижу альтернатив. И это не очень хорошо на самом деле, ибо xamarin платный
GR library Вам в помощь.
http://www.libgr.ru
Alexdamme
Прикольная штуковина, на для движка нужно больше функционала )
Немного новостей )
Редактор обрастает функционалом и становится похожим на редактор. Что сейчас есть: меню, панелька инструментов, дерево акторов, окно ассетов, лог, редактирование сцены и окно параметров в прогрессе. В плане собственно доделать окно параметров, окно анимации и выгрузку приложения в Android.
Немного сместилась целевая аудитория в сторону инди-разработчиков Game Maker, Construct 2 и их рода. Т.е. теперь охватываются все, кто хоть немного хочет сделать игру.
Поэтому, помимо шаблонов игр, вводится создание игровой логики простыми блок-схемами по принципу действие-реакция. Например, действие "нажата клавиша" или "объекты столкнулись" побуждают цепочку действий с простыми условиями. Вобщем, как в Construct 2.
С таким подходом охватывается вся аудитория. Начинающие используют шаблоны, добавляют/изменяют логику блок-схемами. Где становится сложнее - переходят на скрипты.
Для профессионалов - весь исходный код на плюсах и расширяемый редактор.
Еще думаю вместо C# для скриптов использовать Lua. Кому что ближе, кстати? )
C# даже в виде моно требует лицензии, не говоря уже про хамарин. Хотя, недавно их приобрел майкрософт, может что и подвинется в лучшую сторону. Но на нем гораздо больше программистов, чем на Lua, имхо. С другой стороны Lua полностью бесплатен и самый распространенный скриптовый язык.
anz
> Еще думаю вместо C# для скриптов использовать Lua. Кому что ближе, кстати? )
Мне ближе C#, но я не вижу смысла делать на нём скрипты. Если в C++ всё сделать по уму, то писать на нём игровую логику будет не намного сложнее.
Лично я в своём движке планирую делать скрипты на C++. Я даже позаботился о том, чтобы это было просто и стандартных хидеров не требовалось. Это ускорит компиляцию скриптов и можно будет в процессе редактирования кода их компилировать в dll.
Lua и подобные ему скриптовые языки может быть впоследствии прикручу для галочки, но основным будет C++.
anz
> - Производительность. Быстрее Unity, потому что С++.
Сам Unity внутри тоже написан на C++.
anz
> Схема монетизации как у Unreal Engine: движок полностью открыт и бесплатен, но
> если доход от приложения, созданного на нем, превышает некую сумму, разработчик
> обязан перечислить процент от дохода.
Но кто и как будет за этим следить?
anz
> - Opensource & full free. Открытые исходники и полная доступность всего.
А лицензия-то какая? А то бывают проприетарные лицензии с ограничениями, но при этом открытые исходники. В том же Unreal так вроде.
Кстати, как в далёком будущем будет называться вторая версия движка? o2 2?
gammaker
> Если в C++ всё сделать по уму, то писать на нём игровую логику будет не намного
> сложнее.
Но это не избавит от "духа С++" ) Всеравно С# как язык гораздо удобнее и проще, чем С++
gammaker
> Сам Unity внутри тоже написан на C++.
Это понятно ) Но вот писать логику на С++ там можно сказать невозможно.. Скрипты в юнити одно из самых узких мест
gammaker
> Но кто и как будет за этим следить?
Никто ) Пока и следить то не за чем
gammaker
> А лицензия-то какая? А то бывают проприетарные лицензии с ограничениями, но при
> этом открытые исходники. В том же Unreal так вроде.
Ага, как в Unreal
gammaker
> Кстати, как в далёком будущем будет называться вторая версия движка? o2 2?
Не знаю, мне бы первую выпустить было бы неплохо :D
Кстати, набросок конечной версии редактора
я за Lua
Годный проект, желаю успехов!
И я так понимаю, что для кнопочек и прочих ui контролов/рюшечек - мостится спрайтами, а не вектором?
FireFenix
> Годный проект, желаю успехов!
Спасибо! )
FireFenix
> И я так понимаю, что для кнопочек и прочих ui контролов/рюшечек - мостится
> спрайтами, а не вектором?
Да, спрайтами. Вообще, есть мысли по поводу введения векторной графики в движок
anz
Расскажите про архитектуру, редактор будут генерить код или промежуточный json? Как у вас работает рефлексия?
Тема в архиве.