MightyThews (часть вторая)
Все наработки из предыдущего поста были сделаны за октябрь-январь 2014-2015 годов.
В начале 2015го я попробовал собрать большой уровень, который просадил фпс на телефоне ниже шестидесяти. Я схватился за голову и плотно сел за оптимизацию. Но быстро обнаружил что в интернетах с ней уже справились до меня и выложили код по сшиванию мешей, текстур и разверток, для кастомных персонажей. Я быстро его изучил и расширил функционал сборщика персонажа.
Теперь как только персонаж изменял внешний вид, его тело, прическа, прочие шмотки - схлопывались в один объект и одну текстуру. Таким образом одна крыса в кадре отрисовалась за один проход, но занимала чуть больше места в видеопамяти.
В итоге я получил около тридцати процентов фпс сверху. Для телефона вышло где-то на пятнадцать кадров в секундну сверх максимальных шестидесяти.
В этом видео можно заметить разные штуки, вроде цветовой реакции на удар. Или одежды, которая вешается на тело вторым слоем с прозрачностью.
Надо заметить что после того как персонаж собирался в единый меш, я больше не мог его разобрать и собрать в другом порядке. Пришлось писать систему, которая подгружала предметы на лету, собирала персонажа и выбрасывала скопившийся в памяти мусор от предыдущего объекта.
Все ссылки на объекты и их параметры, поселились в жирных скриптах, которые подгружались в специально написанную библиотеку. Оттуда можно было выдрать любой параметр оружия, в любой момент времени. Например в момент удара можно метнуться туда, посмотреть сколько оружие наносит урона и прочие его множители. Вернуться обратно и шлепнуть этим уроном в противника.
В июне я уволился из очередного офисного турне и сел за сложные квесты. По сути это были те же самые квесты, но гораздо более комплексные. Чтобы пройти один, нужно было выполнить ряд других. К несчастью у меня не сохранилось прохождение ни одного из них.
Квесты получались хорошо, а вот сюжетка совсем не шла и я придумывал себе другие челенджи, например вот этот пистолет.
И стрельба по глупому аи.
Можно заметить что противники больше не ложатся в позу, вместо отыгрывания смерти.
Теперь у них есть рагдолы, но при этом они частично падают по анимации.
Я собираю все коллайдеры на персонаже и несколько кадров считаю их направление, которое задает анимация. После чего присваиваю среднее значение ускорения на каждый коллайдер и включаю ему физику.
Правда рагдолы тут плохо настроены, видно как им крутит хвосты.
Далее можно посмотреть как я попытался прикрутить стелс мод, который в итоге ушел в мусор.
Эта была очень жирная система с глюками и багами, она просуществовала несколько месяцев в незавершенном виде, после чего я отключил ее от аппарата жизнеобеспечения.
Здесь можно посмотреть на очередную попытку создать уровень под сторилайн, который снова закончился изысканиями на тему поиска "удобного" интерфейса. В итоге все описания я зарезал и ограничился названием предмета.
На следующем видео при нажатии на бокс мы одеваем рюкзак и накапливаем методы по вызову рюкзака. Я думал что они очищаются сами каждый раз, но в итоге оказалось что они копились, а очищать переменную нужно самостоятельно.
А вот тут немного ретро файтинга с музыкой из Alien Soldier.
Завтра покажу к чему все сейчас пришло.
В прошлом посте я сказал что не умею в сторилайн и несколько человек (@devcor, @Koldyr, @mrViRu5) захотели помочь. Чему я, естественно, очень рад. Я собирался вам ответить, но подумал, что будет лучше, если сначала вы увидите конечную итерацию, которая довольно сильно отличается от нынешней.
На сегодня пока всё. Всем мышей.



я первый в очереди на предзаказ