Очередная пятница на связи. Без приукрас, просто №12.

Всем здравствуйте и ближе к делу.

I Анимации от 1-го лица с книгой

Нет, чтение книги мантр в ROG, тем более в уединенных местах, не добавят вам интеллекта. Зато книга определенно сделает вас сильнее. В ней можно хранить и мантры на лечение, и на восстановление маны, и как на положительные заклинания, так и на отрицательные.

[К слову,]

До записи в книгу мантры использовать нельзя.

Запись не всегда происходит успешно. Как и прежде, параметры, влияющие на вероятность успеха запись, останутся в секрете.

После того, как записана какая-либо мантра, добавление аналогичных мантр в книгу всегда происходит успешно.

От количества одинаковых мантр, записанных в книге, уменьшается время чтения заклинания (релоад/прелоад).

Оптимальное значение количества аналогичных мантр в книге = 4*(уровень мантры), что приведет к снижению РЛ/ПЛ на 50%.

Мантры расходуются, если их зачитывать до дыр. Скорость расходования мантр мы еще не прикидывали.

***

Вот часть анимаций с книгой от первого лица.

Эквип

Айдл

Анэквип

II 3D модели

Наплечники

Мы пошли довольно уже стандартным для нас путем: делаем основы, из которых собирается огромное количество вариаций. Так и с наплечниками. Делается одно плечо, потом собираются наплечники, глобально, трех видов:

  1. симметричные;
  2. ассиметричные (одно плечо полегче, второе - тяжелее, одно защитное, второе - атакующее);
  3. односторонние.

IIОптимизация

Представим ситуацию - лежит охапка дров, каждое полено - отдельный 3D объект (Static Mesh), а в охапке их 100 штук. Такая охапка будет весить для ваших ЦПУ+ГПУ, как 3 персонажа в кадре, к примеру. Это, как вы понимаете, не очень хорошо.

Существует 2 пути оптимизации:

  1. Мердж (слияние) данных объектов в один общий (геометрия) - еще совсем недавно такую фишку могли позволить себе только студии-гиганты, т.к. она стоила очень и очень приличных денег;
  2. Создание, настройка и использование функции “инстанс”, которая позволяет как бы “рисовать” по поверхности объектами, при этом автоматически меняя их масштаб, угол наклона, поворот, а самое главное - объединяя их в специальные группы, которые значительно легче для ЦПУ+ГПУ.

Сегодня расскажем о втором способе. Его главные преимущества:

  1. не создается новый, дополнительный объект, что положительно сказывается на размере клиента;
  2. сохраняются LOD’ы для каждого отдельного объекта;
  3. объекты, которые выпадают из обзора камеры, перестают рендериться;
  4. при грамотной настройке функции, значительно сокращается количество чел.-часов дизайнеров уровней на нанесение мелких, повторяющихся объектов на карту.

О первом приеме и их сравнение - в следующих выпусках.

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 Заключение

Как обычно, немного околоразработки:

  1. В продолжении темы Околоразработка №2 нужно сказать, что история с собственной сетью IP адресов превращается еще и в собственные NS-сервера, и все это становится уже достаточно серьезно. Уже арендована и настраивается первая по-настоящему серверная железка, которая возьмет на себя сайт+форум, игровую базу данных материка для Европы и СНГ, почтовые сервера, NS-сервера и прочую лабуду. Помимо бэкапа, главная ее надежность - это не только рейд1, но и, ближе к раннему доступу, зеркало на другой резервный сервер.
  2. Мы прислушались к мнению насчет картинок для Steam, и в ближайшее время выкатим обновленный вариант №1.

На этом пока все, не болейте, не скучайте и хороших выходных!

Присоединяйтесь к голосованию и обсуждению отчета на нашем форуме и в группе ВК.

Вечер пятницы – вздROGнем, друзья!

С уважением,
команда Reign of Guilds