![]() |
Melissa Project
Вложений: 1
Всем привет! Готовлюсь к релизу беты библиотечки (движка), для создания игр под Android.
Кратко опишу, что на данный момент есть:
Это, то, что я пока помню. Для работы на винде, нужен будет компилятор MinGW (TDM). На линуксе и так все понятно, gcc установленный в системе. Чем это лучше или хуже аналогов. Скажу сразу: я не соревнуюсь с гигантами типа Unreal, Unity и т.д., я делаю легковесный движок для инди разработчика. Чем это лучше Ogre3D. Огр крутой, мощный движок, но вы пробовали его собрать? Чем это лучше Unity, ничем, легковесней. Вобщем цель движка, писать простенькие игры легко и быстро, без хорошего знания c++, систем сборки и платформы Android. Это почти так же легко как писать скрипт! Для релиза пока мешает отсутствие на винде сборки под андроид, обработка нормалей при направленном освещении, спекуляры, немного оптимизации и регресс тестирование. Пример тестового приложения: Код:
#include "m3iRoot.h" Ставьте "Спасибо" если вам интересен данный проект. З.Ы. на этом движке была сделана игра https://play.google.com/store/apps/d...alcdevelop.las |
Ответ: Melissa Project
Жду исходников) Если честно, для меня они интереснее самого движка. В частности, реализация теней от тел, как на картинке, и постобработка. И ещё - насколько сильно проседает производительность при попиксельном освещении вместо повершинного?
При повершинном мой телефон вполне адекватно рисовал порядка 2-10к полигонов. |
Ответ: Melissa Project
Вложений: 1
На картинке лайтмапа. Сорцы прикрепил, если интересно. Самое интересное место "Render/m3cRender.cpp"
PS. там медия не актуальная если, что. Сорцы последние. |
Ответ: Melissa Project
Цитата:
Если я правильно понимаю initialize и render это переопределённые методы базового класса, просто не видно из контекста, я бы использовал слово override -- оно предотвратит ошибку неправильного переопределения и просто более читабельно выглядит, не нужно подглядывать в базовый класс чтобы смотреть что у него виртуальное. Ещё вот я делаю так: Код:
int main( int, const char*[] ) { А также не требуется использовать указатели -- ссылки более безопасный вариант. К тому же можно сделать вот так и не беспокоиться об утечке памяти, в случае непредвиденных выбросов. Код:
int main( int, const char*[] ) try { |
Ответ: Melissa Project
Цитата:
Как ты можешь заметить, у меня нет main, это дает нам плюс, в плане кроссплатформенности |
Ответ: Melissa Project
Цитата:
Переопределение pure virtual тоже переопределение, и тоже можно применять ключевое слово override. Ну в общем ок понятно. Посмотрю исходники, может без main и лучше. |
Ответ: Melissa Project
Цитата:
|
Ответ: Melissa Project
Наконец-то дошли руки собрать движок под виндой.
Я выкладываю ссылку на сборку и на видео. Позже я сделаю сайт, куда буду постить уроки, статьи. Там же будет форум и багтрекер. Билд Часть 1 видео Часть 2 видео |
Ответ: Melissa Project
pozitiffcat, ты говоришь, что при компиляции каталог с билдом чистится, и потом создаётся под андроид или винду. может лучше сделать разделение на каталоги-таргеты, отдельные папки win, android и т.п., чтобы единожды сделанная версия лежала спокойно там, не затиралась.
и также библиотечки, которые нужно копировать в папку с виндовым проектом, можно копировать туда автоматически, ну или добавить галочку в гуи_билдер "включить исполняемые библиотеки" (или как-то так). |
Ответ: Melissa Project
Цитата:
|
Ответ: Melissa Project
Зафункционировал сайт, пока без баг трекера и форума.
Там будут появляться статьи. http://melissa-project.org |
Ответ: Melissa Project
|
Ответ: Melissa Project
Цитата:
|
Ответ: Melissa Project
Круто! ябпокодил
А движок позиционирует себя как абсолютно некоммерческий? Или я что-то недопрочел? |
Ответ: Melissa Project
Цитата:
|
Ответ: Melissa Project
Цитата:
|
Ответ: Melissa Project
Цитата:
|
Ответ: Melissa Project
Вложений: 1
Поздравьте меня ребят, я осилил тени от точечного источника освещения.
|
Ответ: Melissa Project
Вложений: 2
После долгих мучений, реализовал какое-то подобие SSAO
Прикрепил скрины без, и с эффектом |
Ответ: Melissa Project
На сайте теперь можно сорцы смотреть:
http://melissa-project.org/index.php...c&mpath=source cron настроил на серваке они там всегда актуальные из default ветки будут. Если, кто-то пилит свой двиг, может воспользоваться. |
Ответ: Melissa Project
Наткнулся тут на пост Кнайта, http://forum.boolean.name/showpost.p...4&postcount=17, чето стремно стало )))
|
Ответ: Melissa Project
Цитата:
Вообще, лично мне затея уже нравится. Удачи и гладкого кода!:ok: |
Ответ: Melissa Project
Не нужно делать поспешных выводов и хоронить проект. Пока тебе нравится писать движок - пиши! :)
|
Ответ: Melissa Project
Цитата:
А вообще ты знатный любитель велосипедов, я гляжу даже подобие трекера задач впилил и какое-то поделие для просмотра исходов. Чем существующие решения-то не устроили, пусть даже и бесплатные? А еще код не все могут нормально форматировать. Вернее форматировать могут не только лишь все, мало кто может это делать. А у тебя я смотрю даже названия переменных вменяемые, батя говорит малаца. Хотя я бы вместо префикса сунул все это барахло в неймспейс таки. |
Ответ: Melissa Project
Вложений: 1
Так как критерием завершенности рендера моего проекта является качество картинки, я выкладываю на суд новое изображение, посмотрим сколько оно соберет голосов.
И еще у ребят хочу спросить одну вещь. Маленькое вступление. Анализировал я сегодня рынок мобильных приложение, а точнее топовых игр, и обнаружил к своему удивлению такую вещь. Во всех играх есть спекуляр, бам маппинг, и даже блум, но нет теней даже от Directional источника освещения, что меня сильно удивило. Все это легко реализуемо и на Open Gl ES 2 версии, так может я зря тут распинаюсь, и делаю 3 версию. Может все дело в художниках? Собсно вопрос. Вы как думаете, есть ли смысл, делать движок с приминением отложенного освещения, когда успешно реализуются приложения без этого? Тем более все мы понимаем, одному мне не потянуть всего самостоятельно, что можно реализовать на 3 версии, не хватит сил на обучение. |
Ответ: Melissa Project
Цитата:
Если по делу, я бы собрал несколько толковых, компетентных разработчиков, и художника. Заново спроектировали бы систему и запилили бы. |
Ответ: Melissa Project
Цитата:
|
Ответ: Melissa Project
Цитата:
|
Ответ: Melissa Project
лал, ну вот опять понеслась "нахер двиг когда есть готовые?". без игры для которой это двиг делается, трудно понять че в него пихать и как это все будет на производительность влиять в реальном проекте. поэтому двиг писать это всегда интересно, и даже полезно, особенно если параллельно пишешь игру.
кароч всегда уважал, и буду уважать чуваков которые что-то делают, а не чешут языком по движку: бамп дикий, спекуляра много, а так графон приятный. |
Ответ: Melissa Project
Ну оно просто не нужно. Точнее, в общем и целом тот же кокос это адъ и израиль (хотя 3 версия значительно лучше того что было во второй, но некоторые ебанутости они по наследству притащили таки, плюс трудолюбивые китайцы нового добавили, куда без этого-то), хороший, годный 2D движок для кросс-платформенной разработки под мобилки (и не только) очень сгодился бы, но если ты спросишь на stackoverflow что-то типа "чо юзать под мобилки для моей супер-мага игры, как флэппиберд только круче", тебе на выбор дадут либо кокос, либо юнити с вероятностью 95% (ну там есть еще всякие поделия сильно на любителей БДСМ и прочих веселостей), поэтому надо очень постараться чтобы попасть в ряд с кокосом и юнити (при этом еще и бесплатным быть, да). Я на досуге как-то считал, у меня вышло что если я остановлю все проекты в компании и мы начнем ебашить свой движок (который нам нахуй не нужен, потому что юзаем кокос в основном), то это будет минимум полгода на выпуск первой юзабельной версии. Стоимость 6 месяцев работы компании это весьма немаленькая такая сумма. При этом, как я уже сказал, на выходе должен быть халявный продукт для большей части потенциальных юзеров. Т.е. чтобы просто окупить эту работу потребуется ну лет 5, например, при условии что оно вообще кому-то будет нужно, потому как есть устоявшиеся решения, которые умеют толпы разработчиков, а вот начинать новые проекты на каком-то неведомом решении ссыкотно, а чтобы не было ссыкотно, надо много разработчиков на выбор, которым не интересно изучать платформу, на которую нет спроса, и подсадить на нее кучу разработчиков весьма не тривиальная задача даже имея много денег (имея дохуя денег вопрос другой, но что-то я не уверен что у тебя есть свой Google Inc. чтобы его продать), инвестиции будет такие нефигово рисковыми и лучше эти бабки в МММ вложить, ну или впилить кучку игор на том что есть. Сделать все то же самое на энтузиазме как-то не представляется возможным за сколько-нибудь осмысленный промежуток времени. Вариант вкинуть гору бабла и времени во что-то для лулзов я не рассматриваю в принципе, по крайней мере пока не буду иметь бабла чуть больше чем могу потрать за 3 жизни.
В общем и целом что-то такое может взлететь вместе с какой-то новой попсовой платформой, примерно как Эппл изрыгнул в свое время айфон и под него пересобачили кокос на быструю руку, который именно благодаря резкому взлету популярности айоса тоже взлетел (так-то он еще до cocos2d-iphone существовал, но не был нужен никому и был бы не нужен и сегодня, если бы чуваки не подсуетились портом на айос в свое время). Но тут проблема в том, что хуй бы его знал, когда что-то такое опять случится, и будет ли это вообще в обозримом будущем. Поэтому я и говорю что твои потуги как что-то направленное на создание продукта не нужны и не имеют смысла, только для получения экспириенса. Если же есть желание делать что-то полезное, то я уже сказал чем можно заниматься и не страдать херней. |
Ответ: Melissa Project
Да, то о чем ты говоришь, я об этом думал, что все херня, пока нет какого-то влияния из вне, так, что просто буду заниматься ради удовольствия. Если поцики заинтересуются, может буду делать что нибудь. А так шансов нет конечно.
Слушай а где можно пощупать ксорс, который пилится? |
Ответ: Melissa Project
Цитата:
|
Ответ: Melissa Project
Вложений: 1
Цитата:
|
Ответ: Melissa Project
|
Ответ: Melissa Project
Цитата:
Цитата:
|
Ответ: Melissa Project
Цитата:
|
Ответ: Melissa Project
Ну я ж выше писал уже, что прикидывал трудозатраты, но посчитав (причем весьма грубо, в реальности могло выйти намного больше) да и помня имеющийся опыт я таки решил, что нахер мне такое счастье, хотя поддержка халявного продукта все проще должна быть, и не так юзеры будут выносить моск.
А так сраный кокос подпиливаю по ситуации, тоже веселое занятие чо. |
Ответ: Melissa Project
Вложений: 1
Мягкие тени, любуйтесь.
Вместе с этим я еще сделал управляемый процесс пост обработки. Вешается свой колбэк. Вот пример: Код:
class MyRenderCallback : public mfRenderCallback |
Ответ: Melissa Project
Вложений: 1
Тут есть ребята, которые могут помочь мне с SSAO?
А то вот какой он у меня: PHP код:
|
Ответ: Melissa Project
Скриншоты приятные но везде присутствует шум, типо карандашных почеркушек. Впечатление что от твоего SSAO.
|
Ответ: Melissa Project
Цитата:
|
Ответ: Melissa Project
Обычно делают первый пасс шумный в отдельную текстуру, а дальше его блюрят с учётом глубины (чтобы ссао не выползало за границы или внутрь после блюра).
|
Ответ: Melissa Project
Ну у меня и первый проход стремный получается
|
Ответ: Melissa Project
Хз, вроде первый нормально выглядит. Убери бамп и собери более сложную сцену из нормальных моделей - тогда понятнее будет.
Есть ощущение, будто у тебя все лучи сдвинуты вбок - с одной стороны объекта АО темнее, с другой светлее. |
Ответ: Melissa Project
Короче все, что я сделал, тормозит на мобилке. На FPS влияют тени, сглаживание тени, SSAO также. И если рендерить без Deffered, то в разы шустрее. Короче не готовы пока мобилки к таким вычислениям.
А вот компу почти пофиг на ФПС, если поочереди отключпать фичи, у меня на GT240 от 240 до 300 фпс |
Ответ: Melissa Project
прост для дефереда( и прочих image-based фич ) нужна большая пропускная способность памяти, чего у мобилок никогда не наблюдалось
|
Ответ: Melissa Project
Цитата:
|
Ответ: Melissa Project
|
Ответ: Melissa Project
Рискнул было запустить на Nexus 5 (Android L), но не тут то было. Сначала приложение запускается, секунд 5 чёрный экран, потом вылет без предупреждения и каких либо ошибок.
Проц у меня Qualcomm MSM8974 Snapdragon 800, видеоадаптер - Adreno 330, OpenGL ES 3.0 вроде как должен тащить. |
Ответ: Melissa Project
Цитата:
|
Ответ: Melissa Project
Можешь еще раз попробовать, я precision шейдерам прописал. Странно, конечно, что у меня без этого работает, я думал это фишка ES 3.0, а оказывается нужно писать как и раньше
|
Ответ: Melissa Project
На Galaxy Note II - андрлид 4.4.2 - не запускается. Приложение остановлено.
При первом запуске выдал эту ошибку. При втором повешал всю систему. После разблокировки экрана что то промелькнуло похоже на сцену. Перезагрузил телефон и теперь всегда "приложение остановлено". На планшете Nexus 7 (2013) - андроид 5 - стартует черный экран на секунду и закрывается. |
Ответ: Melissa Project
Цитата:
|
Ответ: Melissa Project
походу у тебя сайт отвалился. или у меня провайдер шалит. ссылка не доступна.
а нет, ссылка работает. правда проверить не смогу, планшет чото сдох. |
Ответ: Melissa Project
Цитата:
|
Ответ: Melissa Project
Цитата:
|
Ответ: Melissa Project
сдохла только зарядка.
http://youtu.be/D3U-id7uYKo вроде работает. выход с приложения работает криво. |
Ответ: Melissa Project
Цитата:
видео, нет доступа говорит |
Ответ: Melissa Project
Цитата:
|
Ответ: Melissa Project
Цитата:
|
Ответ: Melissa Project
Цитата:
|
Ответ: Melissa Project
Цитата:
|
Ответ: Melissa Project
Цитата:
|
Ответ: Melissa Project
Логи, половина шлака от самсунга, видимо, но вдруг чё важное, т.к. это всё вылилось при запуске проги.
|
Часовой пояс GMT +4, время: 10:10. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot