Добавлен , опубликован

Коротко о проекте

Язык разработки: Java.
Используемый движок: JMonkeyEngine 3.
Классификация и камера: сайд-скроллер, 2д-платформер.
Жанр: РПГ с элементами сандбокса и стратегии с непрямым управлением.
Статус: проект опять заморожен.
Начало работ по этому проекту удивительным образом совпало с конкурсом Game Boom #2: Sandbox, так что сама судьба велела быть этому проекту еще и конкурсной работой, но не сложилось - завал на работе привел к тому, что заявка на участие в конкурсе была отозвана, а проект временно заморожен.

Предыстория

Была себе небольшая деревенька во главе с наследственным шаманом. Правил шаман мудро и уверенно вел деревню в светлое будущее, но слишком уж жителей баловал - то им дождь призови в засуху, то снег посреди лета, то в зверей оборачиваться научи.
И вот однажды непомерные запросы жителей дошли до того, что потребовали они жизни вечной и прямо в этом мире, без всяких там сказок о небесах и духах предков.
Бессмертие штука заманчивая и если бы шаман знал его рецепт, то давно бы сам им и воспользовался. Но отвечать на требование жителей как-то нужно, пусть даже прибегнув к хитрости.
Чтобы как-то отвлечь жителей, пришлось шаману снарядить очередного героя и зашвырнуть его в открытый портал, посоветовав напоследок не возвращаться без чего-нибудь стоящего.
Способ был проверенный - даже если герой не возвращался с тем, за чем его посылали, ажиотаж в деревне на какое-то время спадал, а там, глядишь, что-то новое захватит воображение жителей.
Правда доставшаяся от прадеда книга, позволяющая открывать порталы, не позволяет самостоятельно выбирать место назначения, если там нет чего-то, что могло бы служить в качестве маяка, но кого это волнует? В конце концов, не зря же основное развлечение деревни это прямая трансляция похождений героев с помощью магического кристалла.

Геймплей

Играть предстоит одним из упомянутых выше героев, заброшенных шаманом в другой мир.
Что касается РПГ-составляющей, то здесь все как обычно - бегаем, убиваем монстров, ищем клады, качаемся.
Возможно, будут реализованы местные поселения и возможность выполнять генерируемые на лету квесты.
До тех пор, пока не будут реализованы местные квесты, единственным источником каких-либо заданий будет оставшийся на том конце портала шаман, рассматривающий игрока в качестве ресурсодобывающей экспедиции.
Отдельного внимания заслуживает полностью разрушаемый мир и, соответственно, возможность строительства с точностью до отдельного пикселя. Это и есть те самые пресловутые элементы сандбокса - возможность полностью преобразить игровую карту под свой вкус, будь то бездонная яма на пол мира или архитектурный шедевр, проработанный до мельчайших деталей.
Когда надоедает убийство монстров ради убийства и строительство ради строительства, можно отдохнуть и поиграть в самодержца - достаточно найти местных жителей, естественно, если они еще остались в живых, после чего убедить их переселиться на базу к игроку чтобы основать свое собственное небольшое поселение. И пусть все наблюдающие с той стороны удавятся от зависти.
Жителей, естественно, предстоит всячески обхаживать чтобы они не разбежались, размечая им места под строительство и предоставляя материалы, да и обеспечение безопасности поселения на ранних этапах дорогого стоит, не говоря уже о поставках провианта и удовлетворении эстетических потребностей.

Статус разработки

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

Скриншоты

Ранние этапы

Первые эффекты постобработки

Полезные ссылки

`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Этот комментарий удален
0
24
10 лет назад
0
Лого добавлено, правда совсем никакущее.
0
26
10 лет назад
0
Хоть какое, потом сможешь сменить.
0
28
10 лет назад
0
непонятная фигня
Довольно-таки оригинально. Лого напомнило LSD Dream Emulator.
0
28
10 лет назад
0
ты говоришь что 2д но в отладке видно что идёт работа с трианглами и вершинами
или ты юзаешь 3д движок для 2д графики?
0
24
10 лет назад
0
nvc123, в описании указано какой движок юзается. Да, действительно, используется 3D движок в режиме ортогональной камеры плюс некоторые другие приемы, помогающие работать с 2D графикой. Одна из основных причин - я не нашел ни одного достаточно гибкого 2д движка, где была бы внятная поддержка шейдеров (думаю не нужно объяснять почему), а мне позарез была нужна возможность выгрузить часть вычислений на GPU.
0
10
10 лет назад
0
prog:
nvc123, в описании указано какой движок юзается. Да, действительно, используется 3D движок в режиме ортогональной камеры плюс некоторые другие приемы, помогающие работать с 2D графикой. Одна из основных причин - я не нашел ни одного достаточно гибкого 2д движка, где была бы внятная поддержка шейдеров (думаю не нужно объяснять почему), а мне позарез была нужна возможность выгрузить часть вычислений на GPU.
Вообще посмотри этот список: lwjgl.org/wiki/index.php?title=Game_Engines_and_Libraries_Using_...
1
24
10 лет назад
1
ZLOI_DED, прошу прощения, но во-первых это был ответ на вопрос другому человеку, а во-вторых я не спрашивал совета по движкам.
Slick, насколько мне известно, не поддерживает необходимые мне функции, а может и поддерживает, но тогда там слишком туго с онлайн документацией.
Libgdx это вообще фреймворк общего назначения для работы с OpenGL и работа с 2д графикой в нем мало отличается от того, как это происходит в JMonkeyEngine, может чуть меньше костылей.
0
10
10 лет назад
Отредактирован ZLOI_DED
0
prog:
ZLOI_DED, прошу прощения, но во-первых это был ответ на вопрос другому человеку, а во-вторых я не спрашивал совета по движкам.
Slick, насколько мне известно, не поддерживает необходимые мне функции, а может и поддерживает, но тогда там слишком туго с онлайн документацией.
Libgdx это вообще фреймворк общего назначения для работы с OpenGL и работа с 2д графикой в нем мало отличается от того, как это происходит в JMonkeyEngine, может чуть меньше костылей.
Я лишь прокомментировал. Или если другой человек спросил, то отвечать на твой ответ может только он? Если так, тогда прошу в ЛС. А здесь по-моему обсуждение проекта.
Хорошо, С другой стороны может ты и прав. Сейчас у jMonkeyEngine 3 преимущество над всеми аналогами. Пусть даже и заточенными под 2D.
Прости, действительно влез, не посмотрев положение вещей. Просто сразу бросилось в глаза то, что пилить 2D игру на 3D движке, особенно на яве, будет затратно для юзера. Хотя... гораздо легче тебе с эффектами будет и с шейдерами, тут ты прав. Думал что есть более заточенные под 2D аналоги на яве то...
На скрине "непонятная фигня" у тебя это камни? Или пни? И если это пни, почему они повёрнуты срезом к нам? :D
0
24
10 лет назад
Отредактирован prog
0
На скрине "непонятная фигня" у тебя это камни? Или пни? И если это пни, почему они повёрнуты срезом к нам? :D
Это просто тестовая текстура для проверки функционала правильной покраски частей поверхности, вставленных со смещением. Если честно, я не знаю что это было изначально, до того как я вырезал этот фрагмент, кажется каменный пол с куском колонны - текстуры то по большей части из числа свободно распространяемых. Кстати, надо будет указать этот момент при следующем обновлении главной.
Что касается заточенных под 2д движков - все дело в том, что у меня довольно специфичные требования за счет того, что поверхность состоит не из тайлов, а из отдельных пикселей, которые потом красятся текстурой и заточенные под работу со спрайтами движки мне здесь мало чем помогут.
0
10
10 лет назад
Отредактирован ZLOI_DED
0
prog:
На скрине "непонятная фигня" у тебя это камни? Или пни? И если это пни, почему они повёрнуты срезом к нам? :D
Это просто тестовая текстура для проверки функционала правильной покраски частей поверхности, вставленных со смещением. Если честно, я не знаю что это было изначально, до того как я вырезал этот фрагмент, кажется каменный пол с куском колонны - текстуры то по большей части из числа свободно распространяемых. Кстати, надо будет указать этот момент при следующем обновлении главной.
Что касается заточенных под 2д движков - все дело в том, что у меня довольно специфичные требования за счет того, что поверхность состоит не из тайлов, а из отдельных пикселей, которые потом красятся текстурой и заточенные под работу со спрайтами движки мне здесь мало чем помогут.
Из пикселей? Т.е. суть технологии как воксели только в 2D?
Ты получается работаешь с LWJGL напрямую или создал кастом меш (квадратик - 2 полигона) и на него мат цвет наносишь и составляешь композицию из них? Или как вообще? Если я угадал, то лучше делать их как можно ниже, чтобы не лагало... А то знавал я ребят, которые пытались воксели из моделей вылепить. Брали блендер, лепили там пирамиду (воксели хотели не кубиками, а пирамидками прям как чайные пакетики :D ) и вставляли в гейм... Вот я ржал-то)))
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.