Новости Rust 28 April 2016

Новости Rust Devblog 108 на Русском

Slack Facepunch Studios 2016 04 28 14 25 18

Маленький патч, который содержит множество багфиксов и пару улучшений производительности.

Производительность окруженияAlex Rehberg

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

Микширование и полировка звукаAlex Rehberg

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

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

Звуки еды и питьяAlex Rehberg

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

Озвучка огнемётаAlex Rehberg

Наконец-то я закончил озвучку огнемёта. Теперь она добавлена в игру.

ШагиAlex Rehberg

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

ВодокачалкаTom Butters

water3

С тех пор, как мы добавили больше применений воде, потребность в ней возросла! Именно поэтому мы занялись работой над водокачалкой, которую игроки смогут устанавливать, чтобы добыть себе большое количество воды. Для её запуска вам придётся приложить часть ручного труда.

Рандом лицTaylor Reynolds

Одна вещь, на которую я сильно обратил внимание, это анимация эмоций, которую мы показывали на прошлой неделе. Мне стало интересно, насколько универсальной может быть данная система. А именно, с помощью неё можно разнообразить отдельные черты лица для получения уникальных, не похожих друг на друга лиц, даже в случае совпадения рас (данная система также использовалась для изменения размера носа). При данной рандомной системе, лица игроков могут приобрести непредсказуемый результат, а перебор вариантов по алгоритму параметров лица был труднореализуем из-за сложностей при использовании «правил» изменения пропорций лица.

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

Женская одеждаTaylor Reynolds

Также я потратил время для создания женской одежды по концептам, созданных Полом.

clothingfemale 700x433

ПроизводительностьAndré Straubmeier

Перед тем, как вы прочитаете этот абзац, сразу предупреждаю, что игра находится на той стадии разработки, когда ни одно изменение не может обеспечить прибавку в производительности на 50%, поэтому, вы будете разочарованы, если ждали именно этого. Сейчас ведётся работа над некоторыми незначительными улучшениями, которые впоследствии станут очень значительными.

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

Ещё один вопрос, который я решаю, это падение производительности при повороте камеры на рядом стоящего игрока. По данным тестов, мы окончательно разобрались с этой проблемой.


Следующим пунктом в списке проблем, была проблема рендеринга, которая оказались намного сложней, нежели простой поиск проблем производительности, вызванной данной частью кода. Я понял, что проблема заключалась в процедуре отбора, большую часть времени в которой съедал отбор деревьев. Оказывается, проблема заключалась в Unity, а именно в его работе с обработкой ветра через SpeedTree. Отключение анимации ветра дало значительный прирост производительности (примерно на 7%), что очень важно. В итоге было потеряно много времени, отключена данная функция и обретено понимание, что проще будет реализовать данную систему вручную, не контактируя с Unity.


Чтобы закончить свою работу на этой неделе, я поработал над кодом для пользовательского интерфейса. У нас есть система, которая позволяет нам отображать всё, что угодно в нужных сочетаниях, и при этом не нуждается в написании кода. Это очень удобно в плане использования, но с другой стороны, все эти операции оказались вообще неоптимизированными, что привело к затратам времени до 1 мс на кадр. Сейчас эта проблема решена, и мы можем продолжать получать пользу от удобства использования, не мучая производительность.

Проблема с открытием дверейAndré Straubmeier

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

Игрок в менюAlex Webster

Многим не нравилась поза прошлого персонажа, поэтому я решил поменять её.

beforeafter 700x645

Мне показалось, что ещё нужно сделать показатели голода еды воды и т. п. на игроке.

Вот что получилось.

Это просто идея, если вам не нравится или наоборот, поделитесь своим мнением с нами.

Напоследок, группа голых, замороженных людишек.

Работа над глобальным затенениемDiogo Teixeira

Пару недель назад я начал экспериментировать с глобальным затенением, которое можно было бы вычислить и наложить на большую площадь (например, 1х1 км), сделав это независимо от направления камеры. Техника частиц очень легка и протестирована на широком спектре ПК и консолей. Она поддерживает динамические поверхности и может подстраиваться под постройку нами структур и перемещение динамических элементов.

Так выглядят результаты издалека:

lso1 700x394

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

Надеюсь на следующей недели всё будет готово.

Улучшение прорисовки днаDiogo Teixeira

На этой неделе я сделал перерыв в работе над глобальным затенением, и занялся чем-то, под названием «логарифмический Z-буфер». Эта работа включает патч наших шейдеров для получения более точной работы z-буфера. Артефакты, плохим корректным использованием z-буфера особенно заметны на океанской воде около берегов, выглядят они как постоянное мерцание и дёрганье кромки воды:

water flicker 700x394

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

widescreen seethrough 700x319

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

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

Стальная & Картонная броняPaul Bradley

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

RUSTcardboardarmor1a RUSTHeavymetalarmorcrafted1

Фиксы водных ресурсовMaurino Berry

Просто несколько багфиксов к добавленным ранее предметам.

    • Исправлены бочки с водой, которые не блочили строительство
    • Исправлено ведро воды, которое имело возможность только утолять жажду.
    • Теперь нельзя будет переносить воду в не взятом в руки ведре.
    • Теперь последние 50 мл воды можно допить с бурдюка.

Стартовый обьём калорийMaurino Berry

Изменения в балансе метаболизма на прошлой неделе были очень хорошо восприняты, но требуют хорошей балансировки. Во-первых, я прибавил стартовое количество калорий с 75-100 до 100-125, что даст вам дополнительные 10-15 минут на то, чтобы найти еду, прежде чем у вас кончатся силы. Я продолжаю следить за работой обновлённого алгоритма метаболизма и буду вносить изменения по мере необходимости.

ГорениеMaurino Berry

На данный момент наша система огня что-то типа “огненного шара”, который во время полёта спавнит на себе другие точно такие же шары, это просто нельзя назвать поджиганием. Над этим я и начал работать на этой неделе, и пока что реализация не готова к добавлению в игру, хотя выглядит неплохо:

ignition 700x322

Мне очень хочется закончить эту работу, чтобы я успел добавить огненные стрелы, которые смогут поджигать людей и животных на расстоянии от вас, попутно давая бонус стрелку в виде предварительно зажаренного мяса!

 Список изменений

New eat/drink sounds
New flamethrower sounds
Fixed gradual ambience performance degradation bug
Fixed coroutine leak in entity particle emission
Optimized building block despawns some more
Fixed another performance issue when looking at players
Fixed tree culling performance issue caused by wind
Optimized UI variable display code
Adjusted grass LODing (less upscaling on lower LODs)
Updated player preview idle
Added wave displacement to water quality level 1
Limited shadow distance to 50 when shadow cascades are disabled
Icesheet prefabs use LOD grid
Fixed horizon sky / water blending
Improved aerial perspective density computation
Added shadowmode convar to adjust sun shadow casting
Sun shadows disable completely when shadow distance is set to 0
Added additional procgen benchmarks
Procgen benchmarks reset GC, LODs, grass, decor and tasks before every run
Stripped legacy fog modes from shader compilation and scenes
Fixed that the door animation was stopped one frame too early
Fixed regression that sometimes skipped entity linking when building
Fixed entities not sending slot updates when server side changes are made
Made perf convar display async task queue when set to 6
Server restart command calls quit command after the timer reaches 0
Fixed missing ignite and extinguish icons on small furnace
Slightly higher starting calories
Fixed flames doing less damage to objects when sitting on stone/metal
Map cost reduced to 1 paper
Fixed water barrels not blocking building
Fixed water bucket having drink as default option (impossible to deselect)
Fixed being able to transfer water into an unheld bucket


Вернуться назад
Просмотрели 15415 пользователей.
Опубликовал: Dark; Schneider.
Комментариев: 0

Вы не можете оставлять комментарии пожалуйста пройдите авторизацию/регистрацию

Самые загружаемые обои на рабочий стол
  • Загружено: 557
  • Загружено: 536
  • Загружено: 475
  • Загружено: 448
  • Загружено: 422
Профиль пользователя
Рекламное место
Здесь может быть ваша реклама!

Последнии комментирии