Переработка существ (часть 3)

Добавлен , опубликован
Вот и завершился этап переработки старой графики существ в игре. Гора с плеч! Это третий пост в цикле (первая часть, вторая часть), заключительный! Если в прошлые разы я демонстрировал голые модели, отрендеренные в карты с минимальной подкраской, то в этот раз спрайты подверглись серьёзной художественной обработке.
Вот, например, разноцветные тли. С возрастом голова у тлей темнеет. Это единственное существо в игре, которое растёт само по себе. Просто увеличивается с течением времени. Ещё в галлерею затесались жуки. Два вида: жук красный обыкновенный и жук-открывашка.
Блохи. С возрастом немного сиреневеют, но не теряют прыгучести и позитивного взгляда на мир. Зелёный червь попал в кадр случайно, делаем вид, что мы его не заметили.
Личинки. Ползающие жертвы эволюции, не наградившей их никакими средствами защиты от поедания, разве что реверс могут включить в пугающей обстановке. Просто тупой и беззащитный корм.
Яйца, молодняк и их престарелые предки в естественной для них обстановке. Кадры постановочные, все модели после съёмок были съедены утоплены в формалине. Не в зоопарк же отдавать?
Брызги на морде красного червя и несколько скринов с затекстурированной кровью:
WIP-видео на котором добрые люди ещё не указали мне на то, что кровь пора текстурировать. На фоне новый саундтрек, яйца ещё черновые, клонированные с зелёных. Дело в том, что зелёное яйцо появилось первым, и на момент съемки видео остальные яйца оставались неперерисованными, пришлось похимичить.
Последнее WIP-видео, на котором есть не только затекстурированная кровь, но и её разлетающиеся брызги. uber, спасибо тебе большое за своевременный и очень полезный совет! Брызги оказались очень эффектными штуками при относительно простой реализации - мечта игродела!
Что дальше? Дальше попробую собрать играбельный релиз с парой новых уровней.
`
ОЖИДАНИЕ РЕКЛАМЫ...
14
А ещё скоро питерская Next Castle Party, очень хотелось бы туда попасть с червями. Себя показать, у других чё как посмотреть. :)
31
шикарно...
слежу за проектом ещё с гамина...
сильно изменился...
и надо сказать, в лучшую сторону..)
29
А ещё скоро питерская Next Castle Party, очень хотелось бы туда попасть с червями.
Так что пропускают тебя туда? Билеты покупать?)
26
Когда червь "наезжает" на своё тело, это не выглядит очень красиво. Как насчёт сделать постепенное небольшое увеличение сегментов, если они находятся над другими сегментами? Чтобы казалось, что червь ползает над собой.
Ну, это я, конечно, в качестве эксперимента предложил.
34
На обоих видео есть проблема с z-index. Части червей рисуются поверх других червей.
Надо рисовать каждого червя отдельно, от маленьких к большим. (тут нужно быстрая сортировка), чем червь меншего размера, тем раньше он должен быть отрисован на канвас (что-бы его перекрывали черви большего размера). И рисовать нужно каждую часть червя последовательно.
Должно получится так:
рисуем background
Маленький червь
  • хвост
  • тело
  • тело
  • голова
Чуть больше червь
  • хвост
  • тело
  • тело
  • голова
Большой червь
  • хвост
  • тело
  • тело
  • голова
Игрок (всегда поверх всех)
  • хвост
  • тело
  • тело
  • голова
рисуем foreground
24
H, а нужно ли это в игре такого типа? Глаза не режет, я бы , например, так и не заметил без подсказки
Там другое я заметил иногда между сегментами одного червя видно другого, который под ним
29
Там другое я заметил иногда между сегментами одного червя видно другого, который под ним
он об этом и говорит)
14
Так что пропускают тебя туда? Билеты покупать?)
15-го октября вывешивают списки, пока не торопись. :) Кстати, Jusper обещался тоже заглянуть, если мне таки вывадут там столик.
H, darkowlom: Это следствие того, что звенья червей рисуются в порядке их нумерации от головы. Это не первое попавшееся решение, это наиболее удачный костыль из дешевых. Он позволяет двум червям пересекаться в нескольких местах по-разному (то один поверх другого, то другой) и держит это пересечение достаточно стабильным. Проблемы возникают, тогда, когда черви пересекаются в точке более менее одинаково отдалённой от их голов, тогда глитч, который на видео.
Спасибо за пример решения, но, боюсь, я уже так пробовал. Пришел к выводу, что любая отрисовка червей целиком не годится. Черви имеют свойство расти, что приводит к переключению последовательности перекрытия на ходу, к тому же создаёт ситуации, когда один червь "подныривает" под другого. Это плохо смотрится. Хочется, чтобы наползающий червь наползал сверху, но при этом его хвост могли тоже переползти.
Когда червь "наезжает" на своё тело, это не выглядит очень красиво. Как насчёт сделать постепенное небольшое увеличение сегментов, если они находятся над другими сегментами?
Точка пересечения червей, это не точка, а n звеньев одного червя, пересекающих n звеньев другого. В пересечении могут участвовать более двух червей, черви могут оказаться один вдоль другого. Пока этот комбинаторный взрыв пугает меня настолько, что я цепляюсь за последнее удачное просто решение.
Потом, я наверное поделю карту на квадраты, в которых буду учитывать порядок появления червей и регулировать их пересечение внутри квадрата, тогда я смогу и приподнимать звенья верхнего червя. Хотя тут непонятно как решать вопрос со звеньями на границах квадратов. Но попробую, когда много червей толкаются, глитчей становится многовато.
P.S. Можно попробовать пересекать не звенья, а траектории червей! Тогда вопросы приподнятости можно решить набором точек пересечений с разной высотой для каждого червя. Чем ближе к точке, тем больше подъём звена. С перекрытиями непонятно, зато с приподъёмом вопрос можно решить!
Загруженные файлы
33
А «жук-открывашка» может покусать молодого червя?
14
FruityKilla, спасибо! :)
Кет, не-а. Просто машет рогами, черви отворачиваются от рогов как от препятствий. Плотоядный жук будет отдельным видом. Будет ещё два вида жуков: летающий и плотоядный. Плотоядный будет из зада стрелять паралитическими соплями, чтобы мелочь обездвиживать и безнаказанно съедать.
21
мне кажется что личинки должны быть более живучими, сейчас когда личинке откусишь кончик она умерает?
в жизни она бы задергалась и резво поползла истекая гемолимфой, панический турбомод, борьба за жизнь (если конечно у неё еще есть чем ползти, возможно огрничивать скорость исходя из возраста личинки и количества уцелевших её сегментов). и вообще многие существа продолжают двигаться после смерти, а тут как то неестественно смотрится)
аналогично возможно стоит вдохнуть некоторые движения в откусанные хвосты червей
21
Кет, ну это же ещё добавит атмосферности) уже и "кровь" текстурная и брызги)) а это следующий шаг
Kozinaka, крутые штуки наворотили)
14
сейчас когда личинке откусишь кончик она умирает?
Да, умирает. Дело в том, что у личинки всё движение от головы/хвоста идёт. Мало того, у неё на самом деле две головы - одна спереди, вторая сзади, они переключаются в зависимости от направления личинки. Задняя голова отрисовывается как хвост. От греха подальше без одной из голов я убиваю всю животинку.
В принципе можно при отъедании одного конца позволить ей ползти в противоположную сторону некоторое время. Да, с растеканием лужи крови оно должно быть эффектным.
С хвостом червя дело сложнее. Звенья позиционирует голова, а её нет. Нужно тогда оторванные цепочки организовывать какой-то дополнительной сущностью. Анимировать конвульсии, которые для живого червя нехарактерны - у живого червя звенья тупо по рельсам ездят. Я подумаю. Но если оторванные хвосты будут дёргаться, это будет реально жутко. :)
38
Я вот думаю, может, внести в ограничение узлов изгиба немного хаотичности? А то уж больно он похож на пилу когда поворачивает на 360 градусов. Просто внести небольшой рандомный коэффииент на максимальный изгиб каждой ячейке.
34
Да, было бы прикольно сделать что-бы она немного двигалась после смерти.
33
Кет, ну это же ещё добавит атмосферности)
Эх, когда-то были милые рисованные червесколопендры, а так станет трэш-хоррор в мире насекомых-мутантов =) Я не хочу сказать, что это плохо.
20
Я вот думаю, может, внести в ограничение узлов изгиба немного хаотичности? А то уж больно он похож на пилу когда поворачивает на 360 градусов. Просто внести небольшой рандомный коэффииент на максимальный изгиб каждой ячейке.
По-моему поворот в этой игре работает по-другому.
14
Я вот думаю, может, внести в ограничение узлов изгиба немного хаотичности? А то уж больно он похож на пилу когда поворачивает на 360 градусов. Просто внести небольшой рандомный коэффииент на максимальный изгиб каждой ячейке.
Вместо плавного геометрически простого поворота получится целлюлит. Не стоит. Клёвость изгибов червя в их плавности и идеальности. А пила от того, что её зубья станут рандомными никуда не исчезнет, просто станет хаотичной.
По-моему поворот в этой игре работает по-другому.
Максимальный угол поворота головы ограничен режимом поворота (резкий/плавный) и скоростью движения (чем быстрее червь ползёт, тем более плавный загиб). При всём желании сделать из червя паралитика я не смог бы этого сделать, т.к. дёрганье головы ликвидирует у игрока возможность нормально контролировать траекторию. Звенья просто едут по траектории головы, ты прав.
38
В этом и проблема, что на самом деле они могли бы немного смещаться относительно траектории головы. Это добавит естественности в игру.
16
Это третий пост в цикле (первая часть, вторая часть)
Ссылка на 1-ю часть ведёт на 2-ю часть
Чтобы оставить комментарий, пожалуйста, войдите на сайт.