| Предыдущий | Следующий |
| D2DERR_SHADER_COMPILE_FAILED | D2DERR_UNSUPPORTED_VERSION |
D2DERR_MAX_TEXTURE_SIZE_EXCEEDED
Что означает D2DERR_MAX_TEXTURE_SIZE_EXCEEDED
D2DERR_MAX_TEXTURE_SIZE_EXCEEDED — HRESULT, относящийся к области Direct2D. Запрошенная поверхность DirectX превышает максимальный размер текстуры, поддерживаемый графическим устройством.
Код относится к Direct2D и обычно указывает на несовместимость ресурсов, состояние render target, ограничения устройства или неверную последовательность команд рисования.
Разбор условия ошибки
Ошибка связана с размером или диапазоном. Применительно к этому результату разделяйте размер выделенного буфера, фактическую длину данных, требуемую длину и единицы измерения.
- Запишите переданный и требуемый размеры, тип счётчика и единицы — байты, символы, элементы или блоки.
- При разборе этот результат проверьте баланс BeginDraw/EndDraw, Push/Pop, активные layer/clip и текущую target bitmap.
- При разборе этот результат сверьте размеры текстур и поддерживаемые форматы с feature level и возможностями графического адаптера.
- При разборе он пересоздайте device-dependent resources после потери устройства вместо повторного использования старых объектов.
- При разборе он запишите метод Direct2D, параметры ресурса, factory и render target, которым принадлежат участвующие объекты.
Как локализовать источник
- Включите Direct2D debug layer и сохраните первое диагностическое сообщение перед HRESULT.
- Создайте минимальную сцену с теми же ресурсами и последовательностью вызовов.
- Проверяйте исправление как на аппаратном, так и на программном WARP-рендерере, если это допустимо.
Граница корректного решения
для него недостаточно скрыть ошибку повтором. Применительно к нему после изменения воспроизведите исходную операцию, проверьте конечное состояние объекта и убедитесь, что ресурсы освобождаются без потери первичного HRESULT.
Ссылки по этому результату
Нужно найти другой код? Найти другой код состояния или ошибки.