Подготовка к работе
Это был месяц глубокой технической работы, сосредоточенной на обновлениях, рефакторинге и производительности - закладке основы для улучшенного опыта Stationeers по всем направлениям к версии 1.0.
Спустя два года мы обновили версию движка, чтобы воспользоваться новыми потрясающими функциями Unity 2021. Также есть значительный прирост производительности, плюс улучшения рендеринга и стабильности сети, а также новая консоль отладки - критически важный фундамент для будущего Wow.
Так что в этом месяце нам не хватает контента, но проявление столь необходимой любви к нашей кодовой базе означает, что наши игроки начнут ощущать разницу.
Единство 2021
Наконец-то мы обновились до Unity 2021, добавив множество новых инструментов и возможностей, от производительности и профилирования до причудливых мигающих огней. Конечно, в краткосрочной перспективе изменение версии движка потребовало множества исправлений и настроек, но мы уже видим отдачу, и это готовит почву для гораздо большего в будущем.
Производительность
В этом обновлении началось первое из многих усилений производительности, с корректировками в нашем диспетчере обновлений, обеспечивающими прирост до 30% на больших базах.
Мы также меняем способ рендеринга объектов в игре - объединяем материалы в один, более эффективный материал и сокращаем количество рендереров. Это система, которую мы будем расширять в ближайшие месяцы для дальнейшего повышения производительности.
Сетевые обновления
Пока мы копались, мы начали отходить от устаревшей сетевой системы Unity. Наша цель: обеспечить значительно улучшенный сетевой опыт, стабильность и производительность в многопользовательской игре. В качестве первого шага мы провели рефакторинг присоединения и добились серьезного повышения эффективности.
Это большой шаг, и мы распространяем его на несколько обновлений - следите за этим пространством, поскольку мы распространяем этот рефакторинг на живую игру.
Инструменты отладки
С новой игровой консолью на основе IMGUI мы представили новую систему отладки, которая поможет вам понять, что происходит под капотом. Просто нажмите '/', чтобы перейти к делу.
Ожидайте появления множества инструментов отладки в ближайшие месяцы!
Версия 0.2.2923.14593
Код
- Оптимизирован FPS для больших баз. Сохранения с более чем 20 тысячами вещей должны улучшить производительность на 15-20%.
- Добавлена взрывная сила для команды «остановиться и загореться» (hcf) на продвинутом скафандре.
- В AdvancedSuit добавлена переменная настройки. Благодарим Asleep-Kiwi-1552 на Reddit, который создал систему предупреждения о погоде, но вынужден был использовать настройки воздуха для хранения значений. Это должно упростить задачу!
- Заменены шейдеры на кадрах для повышения производительности пакетной обработки и рендеринга разноцветных кадров. Это первый проход, который позже будет расширен на другие вещи.
- В консоль добавлен «счетчик». например, «count [AllThings / Structures / DynamicThings / AnimatorThings / Pipes / Cables / Atmospheres / CableNetworks]»
- Изменена оптимизация FPS для пользовательского интерфейса PlayerStatus.
- Изменено так, что не все предметы в слотах отбрасывают тени.
- Изменено Увеличен объем добычи
- звуковой сигнал обратного отсчета заряда.
- Изменено разрешение горизонтального автоматического майнинга на небольшие пробелы на местности.
- Обновленный Horizontal AutoMiner, теперь его индикаторы включаются при включении питания.
- Добавлена возможность открывать оконные ставни с помощью лома, если не работает питание.
- Добавлена новая консоль для отладки. Отладчик можно открыть с помощью ключа '\'.
- Улучшенный звук на горизонтальном автоматическом майнере OGRE
- Обновленный планшет Advanced, дополнительная стабильность добавлена к планшету Advanced, его повторное включение и выключение исправит это.
- Оптимизация FPS для PressurePlates. Спасибо Masoneer.
- Добавлена возможность принудительно гидратировать других игроков.
Исправления
- Фиксированные (предварительные) избыточные данные, генерируемые при подключении клиента для синхронизации. Когда клиент присоединялся, хост не генерировал сообщение для эффективной синхронизации этого с клиентом. Подход из другой игры, которую мы делаем (art of the rail), очень эффективен, и мы начали переносить его заново. Он берет данные, которые нам нужно отправить, и тщательно упаковывает байтовый массив, тщательно продумывая, насколько большим должен быть каждый большой объем данных. Это намного эффективнее. Затем эти данные сжимаются и отправляются клиенту. Наше тестирование показывает огромную разницу, во многих случаях на 2–3 порядка (1000 -> 1). Мы улучшили лишь небольшую часть этого, так как другие области могут быть перенесены в эту систему. Однако это требует обширного тестирования.
- Исправлена проблема с производительностью при просмотре экранов планшетов.
- Исправлен всплеск задержки при открытии и закрытии
- Исправлено падение FPS при открытии и закрытии шлема.
- Исправлена ошибка производительности в композитных окнах. При сохранении с большим количеством составных окон должно наблюдаться улучшение производительности. Спасибо, Кенни, за отличный тестовый пример, который выявил эту проблему!
- Исправлено застревание состояния дыхания в режиме бездыхания при быстром открытии / закрытии шлема в вакууме.
- Исправлена проблема с производительностью, когда большое количество панелей SolarPanel приводило к падению частоты кадров при отслеживании солнца с помощью логики или IC.
- Исправлен индикатор выбора инвентаря, который работал некорректно
- Исправлены состояния роста растений тропических и мирных лилий.
- Исправлена оптимизация производительности для знаков.
- Исправлена возможность прокрутки до скрытых окон инвентаря.
- Исправлен сбой визуального шлема после выхода из места / кровати / вездехода и т. Д.
- Исправлена ошибка, из-за которой OGRE не управлялся с помощью логики после запуска вручную.
- Исправлена ошибка, из-за которой шторка не блокировала атмосферу.
- Исправлена оконная ставня, некорректно блокирующая строительство объектов.
- Исправлена проблема с производительностью при отображении всплывающих подсказок.
- Исправлено пользовательское мировое меню, которое не загружалось и не переходило в заблокированное игровое состояние.
- Исправлена ошибка, из-за которой выделенный сервер работал некорректно
- Исправлена ошибка, при которой создание экземпляров графического процессора не включалось для добываемых материалов
- Исправлены динамические объекты, которые по-прежнему создавались из комплектов, когда действие было отменено до завершения.
- Исправлена ошибка, из-за которой печатная плата перемещалась в мир при удалении стекла на консоли.
- Исправлена ошибка, из-за которой определенные продукты не превращались в разлагающиеся предметы при выходе из бункера.
- Исправлена ошибка, из-за которой оконные ставни не могли разрушиться.
- Исправлена ошибка, из-за которой лом не мог открыть оконную ставню, когда он отключен.
- Исправлены звуки OnOff и Powered, которые не воспроизводились на LiquidTurboVolumePump.
- Фиксированная настройка по умолчанию для LiquidTurboVolumePump на 500.
- Фиксированные соевые бобы. Теперь можно добавлять сою в микроволновую печь.
- Исправлено меню загрузки резервной копии. Теперь можно выбирать и загружать миры из списка резервных копий.
- Исправлено преобразование Portable Composter в элемент отладки.
- Исправлена ошибка, из-за которой Компостеры создавали ошибочные удобрения, которые препятствовали росту растений
- Исправлен баг с рисом, теперь его можно ставить в микроволновку.
- Фиксированные устройства (датчик освещенности и т. Д.), Принимающие свет, если конструкция, которая должна блокировать свет, находится в той же сетке. Теперь правильно заслоняет свет.
- Исправлено некорректное смещение текстуры горизонтальной дорожки AutoMiner с учетом направления, в котором она движется.
- Исправлен горизонтальный AutoMiner, плавающий слишком далеко от местности, прежде чем он определит, что он плавает.