Сбой Unity URP: ArgumentException: RenderTextureDesc GraphicsFormat должен быть поддерживаемым GraphicsFormat (R32_SFloaC#

Место общения программистов C#
Ответить
Anonymous
 Сбой Unity URP: ArgumentException: RenderTextureDesc GraphicsFormat должен быть поддерживаемым GraphicsFormat (R32_SFloa

Сообщение Anonymous »

Я столкнулся с фатальным сбоем в моей игре Unity для Android, особенно на некоторых устройствах. Сбой происходит во время настройки рендеринга камеры в универсальном конвейере рендеринга (URP).
Ошибка:

Код: Выделить всё

java.lang.Exception: ArgumentException : RenderTextureDesc graphicsFormat must be a supported GraphicsFormat. R32_SFloat is not supported on this platform.
Parameter name: desc.graphicsFormat
at UnityEngine.RenderTexture.ValidateRenderTextureDesc(UnityEngine.RenderTexture)
at UnityEngine.Rendering.RTHandleSystem.CreateRenderTexture(UnityEngine.Rendering.RTHandleSystem)
at UnityEngine.Rendering.Universal.UniversalRenderer.Setup(UnityEngine.Rendering.Universal.UniversalRenderer)
Контекст:
  • Версия Unity: 60000.64f1
  • Версия URP: 17.0.4
  • Платформа: Android
Наблюдения: Похоже, что URP пытается выделить RenderTexture с использованием формата R32_SFloat (вероятно, для текстуры глубины, карты теней или пользовательского RenderPass), но мобильное оборудование не поддерживает 32-битные форматы с плавающей запятой для рендеринга текстур.
Я не вызываю явно R32_SFloat в моих собственных скриптах; похоже, это запускается внутри UniversalRenderer.Setup.
Что я проверил:
  • Я просмотрел настройки Universal Render Pipeline Asset, но не смог найти переключатель, позволяющий принудительно использовать формат меньшей точности для внутренних буферов.
Мой вопрос: Как я могу заставить URP вернуться к поддерживаемому формату (например, R16_SFloat или Depth16) вместо R32_SFloat, чтобы предотвратить этот сбой на старом или несовместимом оборудовании Android? Есть ли определенная настройка в ресурсе URP или способ перехватить выделение RTHandle?

Подробнее здесь: https://stackoverflow.com/questions/798 ... ust-be-a-s
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»