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

Описание

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

Последняя публичная версия

Благодаря усилиям Лауры Хендриксон и Юлии Николаевой интерфейс и диалоги переведены на английский язык.
Кроме локализации эта альфа-версия содержит следующие видимые изменения:
  • Перебалансировано управление: червь плавнее набирает скорость, больше скользит и может резко поворачиваться перед прыжком.
  • В существующие уровни добавлены декоративные деревья-бонсай.
  • В GUI в левую часть экрана добавлен индикатор проглатывания и усвоения пищи.
  • Добавлены различные эффекты завершения уровня, индикаторы завершения уровня убраны с центра экрана.
  • Ликвидированы найденные игроками ошибки типа падения игры при переключении по Alt-Tab, несохранения кастомного управления и т.п.
  • Уровень с гонками червей стал немного попроще, также появились маркеры-указатели на цель уровня.
  • Адреналин теперь можно вбрасывать в кровь частями по своему желанию в любой момент.

Последнее рабочее видео

Рабочая демка с только что добавленным рельефным текстурированием. На данный момент освещение существ сильно поменялось, т.к. на видео не очень заметно, но на самом деле шейдер освещения работает совершенно неправильно, направление света меняется в зависимости от поворота звена, спеукуляр не спекулярный, а диффуз малодиффузный. Всё будет совсем не так.
Глитч пойманный в процессе налаживания шейдеров освещения, из-за ошибки в формате вершин в цветовые компоненты спрайта стал вбрасываться угол поворота спрайта.

Поддержать проект

Если у вас есть немного свободного времени и вы хотели бы помочь в развитии проекта,
то пожалуйста помогите «Несыти» голосами, подписками, лайками, комментами - чем угодно, на этих сайтах:
Сейчас тяжелое время для любительского геймдева. Сделать игру — лишь половина дела. Самое сложное, это убедить хоть сколько-нибудь значимое количество людей в факте собственного существования. Талантливых разработчиков и их продуктов так много, что любой, кто пытается вылезти со своим проектом, практически обречён на безвестность. Очень рассчитываю на вашу помочь в этом вопросе. Взамен могу предложить аналогичную поддержку ваших проектов, только дайте знать.

Планы

Перерисовываем всю живность, очень хочется успеть сделать это в течение апреля, т.к. к маю заканчивается Канобу-джем и приходит время сдачи работ на Intel LevelUp 2015. В данный момент переделали экран загрузки и я пинаю ногами шейдер освещения.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
16
14
9 лет назад
Отредактирован Kozinaka
16
lentinant, относительно просто - никакой физики, никаких импульсов. Червь, по сути, это голова, которая едет по своей траектории и запоминает путь в виде связанных линейных отрезочков. Дальше на каждой итерации голова расставляет по траектории звенья хвоста как вагончики. Есть эталонное расстояния между звеньями, которое корректируется на размер текущего звена, это расстояние отмеряется по траектории. Траектория - набор прямых отрезков, единственная сложность - отмеряя расстояние найти нужную точку на нужном отрезке. После установки текущего звена от точки его установки по траектории отмечается расстояние до следующего звена.
Звенья уменьшаются по направлению к хвосту, расстояние между ними тоже уменьшается. Каждое следующее звено смотрит на центр предыдущего, кончик хвоста и шея позиционируются немного сложнее, там усредняются несколько точек траектории, чтобы червя не переламывало и хвост не дёргался.
Белая кривая на картинке - траектория, пройденный головой путь. Зелёные круги - габаритные окружности звеньев. Они вообще у всех объектов в игре имеются, по ним обработка столкновений осуществляется.
Если любопытно:
  • серые окружности - габариты отрисовки (если они попадают на экран, то объект рисуется).
  • большие зелёные круги - области остлеживания настенными лампами объектов, чтобы автоматом включаться.
  • большой желтый круг вокруг головы червя - область раскрытия червём челюстей при приближении к съедобным штукам
  • голубой круг около головы червя - область детектящая препятствия, при натыкании на них червь отворачивается (он не может резко остановиться)
  • два красных круга около головы червя - область кусания, если есть контакт с едой и область проглатывания, если получилось еду ухватить (она поменьше)
Загруженные файлы
4
32
9 лет назад
4
афигеть. ваще. вот, человеческий программерский расчет. круто ж ваще.
1
29
9 лет назад
1
единственная сложность - отмеряя расстояние найти нужную точку на нужном отрезке
интерполяцию использовал или как?
4
14
9 лет назад
Отредактирован Kozinaka
4
Fakov, alexprey, ага, если точнее, то это просто пропорциональное деление отрезка. :) Задача по сути такая: на ломаной цепочке связанных отрезков отмерить расстояние в n попугаев. Идешь по отрезкам и суммируешь их длины. Если текущий отрезок даст длину больше, чем искомая, то нужно разделить его в том же отношении, в каком остаток от требуемого нам расстояния относится к длине отрезка. Это и будет точка, в которую нужно поставить текущее звено червя. А дальше всё повторяется для следующего звена начиная с этой точки. Разве что расстояние станровится чуть поменьше с каждым звеном. Червей рисовать - не ракеты в космос запускать. Достаточно школьной математики. :)
...правда дело усложняется тем, что червь может в этот момет сжиматься для или после прыжка, он может откладывать яйцо (тогда по телу волной идёт вздутие от яйца), часть тела червя может находиться в воздухе - все эти эффекты влияют на расстояние между звеньями и их размер и высоту, поэтому на практике кода для расстановки тела червя довольно жирный.
1
29
9 лет назад
1
Kozinaka, ну это не интерполяция уже получается) Хотя в целом в принципе выглядит достаточно годно и работать шустро должно. Просто при интрполяции выглядило бы все куда плавнее
0
14
9 лет назад
0
alexprey, "интерполяция", это просто название приёма, когда по имеющимся точечным данным восстанавливают новые данные внутри диапазона. А сами алгоритмы конечно разные, в моём случае вполне хватает такой вот примитивной арифметики, ты прав. Я уменьшил размер отрезков так, чтобы не было заметно углов в траектории.
0
29
9 лет назад
0
Kozinaka, а ну если у тебя достаточно малый шаг, то да.
Kozinaka:
"интерполяция", это просто название приёма, когда по имеющимся точечным данным восстанавливают новые данные внутри диапазона.
со сглаживанием! :D
0
26
9 лет назад
Отредактирован lentinant
0
Червь, по сути, это голова, которая едет по своей траектории и запоминает путь в виде связанных линейных отрезочков. Дальше на каждой итерации голова расставляет по траектории звенья хвоста как вагончики.
Оу, у меня использовался практически такой же метод, только я его не довел до вменяемого вида (позиция головы запоминалась при прохождении ею определенной дистанции, ну а звенья просто передвигались к определенной позиции из числа запомненных).
0
29
9 лет назад
Отредактирован alexprey
0
звенья просто передвигались к определенной позиции из числа запомненных).
наверное в этом и проблема не точности и кривизны была
0
14
9 лет назад
0
lentinant, если хочешь, я могу на C++ кусочком кода поделиться, который звенья расставляет.
1
24
9 лет назад
1
Когда будет альфа-тест и когда можно будет, примерно, на него записаться?
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.