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



Лига Разработчиков Видеоигр
8.8K постов23.1K подписчиков
Правила сообщества
ОБЩИЕ ПРАВИЛА:
- Уважайте чужой труд и используйте конструктивную критику
- Не занимайтесь саморекламой, пишите качественные и интересные посты
- Никакой политики
СТОИТ ПУБЛИКОВАТЬ:
- Посты о Вашей игре с историей её разработки и описанием полученного опыта
- Обучающие материалы, туториалы
- Интервью с опытными разработчиками
- Анонсы бесплатных мероприятий для разработчиков и истории их посещения;
- Ваши работы, если Вы художник/композитор и хотите поделиться ими на безвозмездной основе
НЕ СТОИТ ПУБЛИКОВАТЬ:
- Посты, содержащие только вопрос или просьбу помочь
- Посты, содержащие только идею игры
- Посты, единственная цель которых - набор команды для разработки игры
- Посты, не относящиеся к тематике сообщества
Подобные посты по решению администрации могут быть перемещены из сообщества в общую ленту.
ЗАПРЕЩЕНО:
- Публиковать бессодержательные посты с рекламой Вашего проекта (см. следующий пункт), а также все прочие посты, содержащие рекламу/рекламные интеграции
- Выдавать чужой труд за свой
Подобные посты будут перемещены из сообщества в общую ленту, а их авторы по решению администрации могут быть внесены в игнор-лист сообщества.
О РАЗМЕЩЕНИИ ССЫЛОК:
Ссылка на сторонний ресурс, связанный с игрой, допускается только при следующих условиях:
- Пост должен быть содержательным и интересным для пользователей, нести пользу для сообщества
- Ссылка должна размещаться непосредственно в начале или конце поста и только один раз
- Cсылка размещается в формате: "Страница игры в Steam: URL"