Dev-блог 176

Rust_DevBlog_176_0.jpg

Супермаркет и автозаправочная станция
Я обновил супермаркет. Полки внутри выглядели достаточно пустыми, поэтому я решил добавить немного беспорядка, чтобы придать зданию вид пост апокалипсиса. Такие вещи, как гнилая пища, старые бутылки, газеты разбросаны по всему зданию. В будущем планирую добавить кучи мусора и в других РТ.

И вот бензоколонка и супермаркет окончательно готовы в сегодняшнем патче.

Rust_DevBlog_176_1.jpg

Rust_DevBlog_176_2.jpg

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

Информационная панель для предметов
Хотя для меня это была короткая неделя, я начал заниматься другим элементом из roadmap, который, я думаю, будет очень востребован: информационная панель для предметов. На основе выбранного вами предмета, показывается информация о нем. Теперь вы будете видеть статистику оружия, какая скорость огня и урон; для инструментов вы увидите, насколько хорошо добываются ресурсы; для оружия ближнего боя вы увидите радиус атаки и урон. Информация отображается в окне крафта предмета, чтобы вы могли видеть статистику предмета, прежде чем создавать его.

Я знаю, что сейчас это похоже на какое то недоразумение, но я просто использую все функциональные возможности. Для этого нужны всплывающие подсказки, правильная настройка и размещение. Кроме того, значения могут быть неверными, поэтому показанная статистика предметов может совпадать с другими. Я работаю над этим.

Я думаю, что эта новая функция поможет разобраться новичкам в игре.

Rust_DevBlog_176_3.png
Rust_DevBlog_176_4.png

Rust_DevBlog_176_5.png
Rust_DevBlog_176_6.png

Информация о сборе ресурсов в настоящее время настроена так, что «значение» (value) показывает скорость добывания ресурсов, а красная часть индикатора показывает, сколько вы можете собрать ресурсов за один удар.

Обновление Брэдли
Не слишком много изменений, но я изменил таблицу лута танка, чтобы он выбрасывал по 10-12 микросхем. Брэдли все еще нуждается в добавлении дополнительных орудий для атаки игроков, а также добавления "слабых мест". Тем не менее, будет целесообразно перейти к другому элементу из roadmap.

Размер карты
С добавлением новых небольших РТ, значительно сократилось место под строительство домов. Учитывая это, я увеличил размер карты по умолчанию с 3500 до 4000. Конечно, администраторы серверов могут изменять размер карты так как им угодно, но официальные сервера перейдут на размер карты в 4000.

Unity 2017.1
Я провел большую часть недели, обновив игру до версии Unity 2017.1. Обновление было связано с рядом проблем, которые необходимо было решить, но в целом это, по-видимому, один из наиболее стабильных обновлений Unity. Помимо некоторых улучшений теневого отображения, на самом деле не должно быть никаких видимых изменений, оно содержит ряд довольно интересных новых функций. Самое большое дополнение для нас и основная причина обновления - это то, что они, наконец, добавили новую версию среды выполнения сценариев .NET, которая включает в себя некоторые довольно крупные оптимизации.

Утечка памяти UI
Я идентифицировал и исправил утечку памяти, вызванную некоторыми изображениями пользовательского интерфейса, которые были загружены из Интернета. Тем не менее, это не самая большая утечка, которую я когда-либо встречал.

Текстурирование
Текстурирование ландшафта вокруг скал выглядело совершенно неуместным и уродливым в течение очень долгого времени из-за изменения цвета в ярко-серый. Я переписал некоторые элементы, из-за которых трудно было обновить поврежденные утесы.

Rust_DevBlog_176_7.png

Приоритеты спавна РТ
Я добавил систему определения приоритетов к спавну РТ, чтобы многие города гарантированно спавнились на разных сидах карт. Самым главным приоритетом стал ракетный завод.

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

Улучшение профилирования
Профилирование - один из наших самых важных инструментов со сбором характеристик работы программы, поэтому важно, чтобы он работал правильно. Исправляя некоторые проблемы из обновления Unity, я решил написать инструмент, который поможет нам найти неправильные образцы профайлов в нашем коде, что обычно является болью для отслеживания, поскольку Unity предлагает очень малое ведение журнала для них. Инструмент отслеживает все вызовы профилировщика, автоматически обнаруживает несоответствия и выводит стек вызовов с точными деталями проблемы. Я сразу обнаружил и исправил два несоответствия профайлера, которые остались незамеченными в течение нескольких месяцев.

Искусственный интеллект
Я объединил новый материал сети Navmesh Grid, но есть все еще некоторые лазейки для повышения производительности, которые можно было бы использовать для подсчета больших объектов. Поскольку процесс генерации Navmesh является непрерывным и происходит не только при инициализации сервера, тем выше уровень производительности при таком подходе по сравнению с предыдущим. На этой неделе мы тестируем сетку Navmesh на нескольких выбранных серверах.

Rust_DevBlog_176_8.jpg

Гвоздомёт
На этой неделе я начал работу над концепцией гвоздострела от Paul, которую вы можете увидеть здесь. Но когда я работал над высокополигональными текстурами, Paul решил переработать концепцию. Концепт можно увидеть здесь. Идея состоит в том, чтобы это было самое "скрытное" оружие в игре.

Rust_DevBlog_176_9.jpg

Звуки танка
Я полностью закончил работу над звуками выстрелов оружия, снарядов, добавил звуки для вращения башни и гусениц. Так как мы обновились до новой версии Unity, я потерял время на исправления некоторых ошибок. Все что осталось сделать - это закончить отдаленные звуки выстрелов и звук взрыва танка.

Оптимизация частиц
Эта неделя в основном заключалась в том, чтобы ускорить обновление Unity до версии 2017.1. На прошлой неделе, мы с Alistar заметили, что некоторые взрывы (например, взрыв гео заряда) значительно понижало FPS в игре, даже если вы находились далеко от взрыва.

Причина оказалась с частицами обломков, выброшенных взрывом. Это также относится к добыче руды и другим эффектам. Эти эффекты просто визуальны и не должны сильно влиять на производительность.

Я отключил коллизию для взрыва более 50 метров, а качество корректируется за счет расстояния.

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

Счетчик Гейгера
Я создал worldmodel счетчика Гейгера. Ученые NPC должны его держать и использовать для исследования радиоактивных зон.

Rust_DevBlog_176_10.jpg

Список изменений:
  • Added Item Information Panels
  • Added Gas Station
  • Added Supermarket
  • Updated food items having missing sounds when consumed
  • More item description updates and fixes
  • Fixed Bradley shooting players through the rocket factory roof
  • Fixed scope/helmet overlays visible in third person
  • Bradley can drop 12 tech trash in crates
  • Removed crappy gather ability from swords etc
 
Сверху