В UNREAL ENGINE 5.8 БЫЛА ДОБАВЛЕНА ФУНКЦИЯ ПРЕДВАРИТЕЛЬНОЙ КОМПИЛЯЦИИ ШЕЙДЕРОВ Движок Unreal Engine 5.8 принес предкомпилированные шейдеры в игры на PC. Американская компания Epic Games задокументировала имплементацию Microsoft’s Advanced Shader Delivery (ASD) в Unreal Engine версии 5.8. Подобная интеграция позволит разработчикам компилировать шейдеры для поддерживаемых GPU до того как пользователи скачают свои приобретенные игры. Это позволит сократить компиляцию шейдеров перед первым запуском, а также уменьшить количество статтеров. Несмотря на ощутимый прогресс в устранении проблемы фризов игрового процесса в реальном времени, проблема решена лишь частично — компиляция шейдеров во время геймплея исключена не полностью. Новый ASD-инструментарий генерирует базу данных объектов состояния — State Object Database (SODB) для собранного билда Windows-игры. База данных содержит код шейдеров и объекты состояния конвейера-State Objects (PSO). При загрузке игр игроки получают соответствующие скомпилированные шейдеры, что избавляет их от необходимости компилировать их локально. Разработчики могут собирать «просчитанные» шейдеры для билдов своих игр, а также распаковывать графические PSO из существующих кэшей конвейера. Инструмент может запускаться как отдельно от редактора Unreal Engine, так и собираться из кода движка. Разработчики Epic предлагают команды для тестирования и записи скомпилированных шейдеров в локальные базы данных до выставления их на витрины в рамках готового продукта. Компания Epic подтверждает, что ASD не заменяет существующую систему предварительного кэширования PSO. Графические PSO по-прежнему должны обрабатываться через кэши конвейера, а для обработки отсутствующих комбинаций может потребоваться компиляция во время игры. PSO не поддерживают трассировку лучей. Работа функции требует наличия Direct3D 12 с поддержкой Shader Model 6, обязательно присутствие совместимого железа и видеодрайверов. Microsoft уже расширили поддержку ASD рядом моделей видеокарт, включая GeForce RTX через драйвер NVIDIA R620. Поддержка широкого спектра моделей видеокарт не означает автоматическую поддержку в существующих играх. Для того, чтобы игры начали поддерживать технологию, разработчики обязаны подготовить базы данных шейдеров, а также обновить дистрибутивы своих проектов на торговых площадках. Попытка интеграции предварительно скомпилированных шейдеров — это способ решить одну из серьезных технических проблем современных PC-игр, к сожалению, не исключает все причины возникновения фризов и статтеров. Другие причины задержек, включая стриминг ассетов требуют оптимизации другого рода. #UnrealEngine5.8 #UnrealEngine #Engine #EpicGames #Epic #Games #Microsoft’sAdvancedShaderDelivery #AdvancedShaderDelivery #Microsoft #Shader #Delivery #ASD #PC #GPU #Windows #StateObjectDatabase #SODB #StateObjects #PipelineStateObjects #PSO #Direct3D12 #Direct3D #ShaderModel6 #ShaderModel #GeForceRTX #GeForce #RTX #NVIDIAR620 #NVIDIA #R620 #Шейдер #Компиляция #Статтер #Фриз #Геймплей

















