Очередная пятница на связи. Без приукрас, просто №12.
Всем здравствуйте и ближе к делу.
I Анимации от 1-го лица с книгой
Нет, чтение книги мантр в ROG, тем более в уединенных местах, не добавят вам интеллекта. Зато книга определенно сделает вас сильнее. В ней можно хранить и мантры на лечение, и на восстановление маны, и как на положительные заклинания, так и на отрицательные.
[К слову,]
До записи в книгу мантры использовать нельзя.
Запись не всегда происходит успешно. Как и прежде, параметры, влияющие на вероятность успеха запись, останутся в секрете.
После того, как записана какая-либо мантра, добавление аналогичных мантр в книгу всегда происходит успешно.
От количества одинаковых мантр, записанных в книге, уменьшается время чтения заклинания (релоад/прелоад).
Оптимальное значение количества аналогичных мантр в книге = 4*(уровень мантры), что приведет к снижению РЛ/ПЛ на 50%.
Мантры расходуются, если их зачитывать до дыр. Скорость расходования мантр мы еще не прикидывали.
***
Вот часть анимаций с книгой от первого лица.
Эквип
Айдл
Анэквип
II 3D модели
Наплечники
Мы пошли довольно уже стандартным для нас путем: делаем основы, из которых собирается огромное количество вариаций. Так и с наплечниками. Делается одно плечо, потом собираются наплечники, глобально, трех видов:
- симметричные;
- ассиметричные (одно плечо полегче, второе - тяжелее, одно защитное, второе - атакующее);
- односторонние.
III Оптимизация
Представим ситуацию - лежит охапка дров, каждое полено - отдельный 3D объект (Static Mesh), а в охапке их 100 штук. Такая охапка будет весить для ваших ЦПУ+ГПУ, как 3 персонажа в кадре, к примеру. Это, как вы понимаете, не очень хорошо.
Существует 2 пути оптимизации:
- Мердж (слияние) данных объектов в один общий (геометрия) - еще совсем недавно такую фишку могли позволить себе только студии-гиганты, т.к. она стоила очень и очень приличных денег;
- Создание, настройка и использование функции “инстанс”, которая позволяет как бы “рисовать” по поверхности объектами, при этом автоматически меняя их масштаб, угол наклона, поворот, а самое главное - объединяя их в специальные группы, которые значительно легче для ЦПУ+ГПУ.
Сегодня расскажем о втором способе. Его главные преимущества:
- не создается новый, дополнительный объект, что положительно сказывается на размере клиента;
- сохраняются LOD’ы для каждого отдельного объекта;
- объекты, которые выпадают из обзора камеры, перестают рендериться;
- при грамотной настройке функции, значительно сокращается количество чел.-часов дизайнеров уровней на нанесение мелких, повторяющихся объектов на карту.
О первом приеме и их сравнение - в следующих выпусках.
1. Тесты производительности на одном участке локации при замене всех Static Mesh-бордюров на инстансы.
Hierarchical Instanced Static Meshes Off ~ 16.6 ms, 3200+ DrawCalls
Hierarchical Instanced Static Meshes On ~ 15.8 ms, 2900+ DrawCalls
2. Еще один пример использования процедурно-генерируемого контента инстансами, вместо ручной работы со Static Meshes. Тест на заливе с лотосами в одной из локаций. Драматическая разница в 20 FPS.
Hierarchical Instanced Static Meshes Off ~ 31.3 ms, 19k+ DrawCalls (!!!), около 2-х тысяч копий Static Meshes
Hierarchical Instanced Static Meshes On ~ 19.8 ms, 6,8k+ DrawCalls, 5 Blueprints, около 2-х тысяч инстансов.
3. Еще один пример использования процедурной генерации на одной из локаций на примере модели SM_achillea на грядках.
Hierarchical Instanced Static Meshes Off ~ 26.8 ms, 8,7k DrawCalls, 1680 копий модели SM_achillea
Hierarchical Instanced Static Meshes On ~ 20.7 ms, 5,5k+ DrawCalls, 6 Blueprints, 2508 инстансов модели SM_achillea
IV Заключение
Как обычно, немного околоразработки:
- В продолжении темы Околоразработка №2 нужно сказать, что история с собственной сетью IP адресов превращается еще и в собственные NS-сервера, и все это становится уже достаточно серьезно. Уже арендована и настраивается первая по-настоящему серверная железка, которая возьмет на себя сайт+форум, игровую базу данных материка для Европы и СНГ, почтовые сервера, NS-сервера и прочую лабуду. Помимо бэкапа, главная ее надежность - это не только рейд1, но и, ближе к раннему доступу, зеркало на другой резервный сервер.
- Мы прислушались к мнению насчет картинок для Steam, и в ближайшее время выкатим обновленный вариант №1.
На этом пока все, не болейте, не скучайте и хороших выходных!
Присоединяйтесь к голосованию и обсуждению отчета на нашем форуме и в группе ВК.
Вечер пятницы – вздROGнем, друзья!
С уважением,
команда Reign of Guilds