122
> А что кто-то тут помнит мои старые игры, это приятно такое видеть.
Я почему-то больше всего помню "Семь братьев неба".
122
> Вообще реюзать что-то с прошлых проектов я думаю годная идея.
Постоянно так делаю.
Как писал (и на чём) редакторы?
Mikle
> Я почему-то больше всего помню "Семь братьев неба".
Хорошее было время. 2008й кажется год, я был молодой, здоровый, и вообще надежда какая-то была.
Эх, вернуть бы надежду.
egoros7
> Как писал (и на чём) редакторы?
Мои любимые вопросы.
Вот скриншоты некоторых редакторов.
Сама программа это мой 3д движок, а редакторы - его вшитая в экзешник часть.
Движок включает в себя заметное количество функционала, начиная с файлового менеджмента и отрисовки 2д и 3д графики, заканчивая физикой, анимацией, и десятками всяких подсистем.
Отрисовка основана на софтварной растеризации, то есть картинка формируется чисто кодом на cpu.
Написано всё на чистейшем с++, поддерживается совместимость с примерно шестью производителями с++ компиляторов (борланд, жсс, интел, майкрософт, кланг, оупенватком). Так что код качественный. Внешний интерфейс имеет поддержку как чистого вин-апи, так и сдл2-апи. Есть возможность делать билды под нативный линукс но они требуют установленного сдл2.
Писать 3д движок начал в 2016м, постепенно расширяя его и улучшая. Хороший код кстати обеспечивает хорошую расширяемость.
Это была секция хвастовства.
Теперь о грустном.
Редакторы были написаны для другой структуры данных. Не для кубов. (на движке вышли игры осенний шутер и демоник раннер) Поэтому для кубов тут многое неудобно и вообще имеются ощутимые проблемы с созданием майнкрафтовых левелов.
Также и отрисовка писалась для другой структуры данных, те упомянутые игры, поэтому и отрисовка кубов оч медленная. Эти кубы тормозят примерно в 2-2.5 раза сильнее, чем отрисовка демоник раннера. А там были статические светокарты, которые сами по себе не сильно шустрые.
Вот скриншоты некоторых редакторов.
122
> Редакторы были написаны для другой структуры данных. Не для кубов.
Можно заюзать MagickaVoxel, как редактор. Там куча импортов поддерживается, какой-нибудь распарсить.
Как раз сейчас одним из них заинтересовался - .ply, не пойму почему для куба 24 вершины используется.
qGrin
> не пойму почему для куба 24 вершины используется
Нормали у сторон разные.
122
А геймлогика программируется целиком или часть геймлогики настраивается через редакторы?
122
вау, прикольно. Напомнило Delver Engine и свои потуги в этих направлениях)
122
>имеет поддержку как чистого вин-апи
И сколько же ты писал их? Я просто интересуюсь как можно написать кроссплатформенный гуй для редакторов, при этом не забивая на игру и движок. Может WinAPI и вправду хороший вариант...
UPD: как ты картинки в winapi добавлял (ну как на скринах)?
Vitorio
> А геймлогика программируется целиком или часть геймлогики настраивается через
> редакторы?
Часть в редакторах, часть в коде.
В прошлом движке, 2012-2015 годы ( игры путь золота стали, планета в тенях, медовый и ванильный рогалики ), я юзал схему где вообще всё устанавливалось через редакторы. И эта схема жрала тонну моего времени и лишних сил.
Так что теперь я думаю что прописывать часть логики напрямую в коде - хорошая идея. Проще, быстрее, удобнее, гибко.
Не стоит бояться прописывать в коде.
Это ведёт к лучшему результату в итоге, к более гибкому поведению сущностей в игре.
egoros7
> > поддержку как чистого вин-апи
> И сколько же ты писал их? Я просто интересуюсь как можно написать
> кроссплатформенный гуй для редакторов
Не не не.
Ты неправильно понял.
Цитата: "отрисовка основана на софтварной растеризации, то есть картинка формируется чисто кодом на cpu"
То есть ВСЯ картинка рисуется на чистом с++. БЕЗ сторонних библиотек вообще.
Даже без math, string, и прочих, тем более без участия апи операционки.
На этапе отрисовки и внутренней логики программы - нулевое участие сторонних библиотек.
А когда изображение уже готово полностью, полный кадр, я его одним куском отправляю на экран, и тут уже есть варианты. Например через вин-апи.
122
>
> Писал где-то, год продаж демоник раннера всё равно что пару недель походить на
> работу.
Суровая правда жизни в 202-м десятилетии: само ничего не продается, даже если игра хорошая. В 201-м и 200-м были варианты, но сейчас - нет.
Проект нравится, анимация 2д скелетонов прикольная и выглядит не как баг, а как фишка, типа они бумажные. Но конечно хотелось бы видеть его полноценным, а не "маленьким на конкурс".
122
> И эта схема жрала тонну моего времени и лишних сил.
Зато как-то я откопал редактор твоего рогалика и знатно повеселился с ним) Конечно, слишком свободно не поскриптишь, но было крайне забавно даже то, что есть. Не помню, откуда он у меня (возможно, выкладывал на гд), но в стим версии его вроде как не было, а зря, эх.
В давние времена многие игры выходили с редакторами, и я в них играл гораздо больше, чем в саму игру...
Но про затраты времени хорошо понимаю.
122
>БЕЗ сторонних библиотек вообще
> одним куском отправляю его на экран
Это как? Как же ты картинку в WinAPI отправляешь? Как картинку строишь? Можно ссылочек или объяснение пж?
а так че, можно было чтоли? рассказывай скорее, мне очень надо!
egoros7
> Это как?
StretchDIBits, блин
VoidSpirit
А алгоритмом каким картинку рисовал?
egoros7
> А алгоритмом каким картинку рисовал?
Это не ко мне вопрос
Тема в архиве.
Тема закрыта.