Девлог Nonogram3D. День 1.

Решил создать игру-головоломку, идея которой заключается в переносе нонограмм (японского кроссворда) в трёхмерную среду. При этом буду вести дневник разработчика, делясь опытом создания: проблемами и их решениями, мыслями, идеями. Начиная с сырого концепта, заканчивая выкладыванием в google play market и steam. В детстве я любил разгадывать нонограммы, особенно цветные. Интересно будет побывать на той стороне, что загадывает)

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

Нерешённый и решённый нонограмм
Нерешённый и решённый нонограмм

В качестве инструментов разработки взял Unity3D, Blender, Inkscape, GIMP и Audacity. С ними работаю давно. Изначально их выбрал, потому что они бесплатны (в том числе для коммерческого использования) и обладают достойным функционалом.

Игровой процесс вижу так: нужно разгадать трёхмерную фигуру состоящую из кубиков, фигура разбита на слои, а каждый слой - отдельная задача нонограмм. Поля должны быть небольшими - 5х5, чтобы кубики в сетке были большими и в них легко можно было попасть пальцем. Малый размер поля делает игру простой, но я и не хочу делать хардкорные головоломки - больше склоняюсь к медитативной залипалке-таймкиллеру.

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

Используемый колорсет
Используемый колорсет

Набросал в Unity предварительный вариант:

Внешний вид игры
Внешний вид игры

Игровую область разделил на 2 части: нижнюю, где находится сам нонограмм, и верхнюю, где находится собираемая фигура - плод труда. Сделал игру вертикально ориентированной и сдвинул весь интерактив вниз, чтобы можно было играть одним большим пальцем, держа смартфон одной рукой. Внешний вид изометрический, повернут на 45 градусов, чтобы подчеркнуть трёхмерность. Цвет кубиков меняется при нажатии на них. В этом, кстати, преимущество электронной версии - бумажная ИРЛ-версия ошибок не прощает) В дальнейшем, решив серию нонограмм, игрок будет награждён фигуркой такого вот пингвина:

Пингвин. Пока из Blender
Пингвин. Пока из Blender

Как-то так. Общее представление сформировано. Многое нужно улучшить или изменить, например: хит детекшн по кубикам ведёт себя странно, сетка выглядит ужасно - мешанина из каркасов кубиков, фигура трудночитаема. Так что буду потихоньку доводить до ума)

В конце буду оставлять ссылку на актуальную сборку: APK для Android и архив с exe-шником для Windows - можно будет пощупать на любом этапе)

22
2 комментария

Как менять цвета внутри фигуры?

Ответить

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

Ответить