Ограниченный режим GPU
При инициализации рендерер определяет возможности устройства и выбирает high или constrained. Ограниченный режим уменьшает размер холста и не декодирует полный растровый фон в WebGL, если тайлы детализации отсутствуют. Автоопределение не требует изменений в приложении.
Автоопределение
Устройство получает ограниченный режим при любом из условий:
- Плотность пикселей устройства не ниже 3 или физическая площадь экрана превышает 8 миллионов пикселей.
- Доступен сенсорный ввод и основной указатель имеет тип coarse.
- Тест загрузки текстур GPU занимает больше 30 мс.
Тест десять раз загружает текстуру RGBA размером 512 × 512 и измеряет завершение. Заявленный максимальный размер текстуры сам по себе не определяет режим. Это правила рендеринга, а не гарантия для конкретной модели телефона.
Поведение фона
Таблица описывает преобразованные растровые фоны в WebGL. Загрузка изображений SVG и резервного режима Canvas2D сохраняет прежнее поведение.
| Параметр | Режим high | Режим constrained |
|---|---|---|
| Максимальный размер холста | Без отдельного ограничения режима | 2048 px |
| Общий вид | Превью | Превью |
| Детализация с тайлами | Ограниченная область из тайлов | Ограниченная область из тайлов |
| Детализация без тайлов | Резервная загрузка полного изображения | Только превью |
При наличии тайлов рендерер собирает нужную видимую область в текстуру ограниченного размера. При уменьшении масштаба текстура освобождается; устаревшие результаты быстрых перемещений отбрасываются.
Начиная с Renderer 1.74, ограниченное устройство без тайлов использует превью при любом масштабе. При увеличении фон может выглядеть менее чётким. Полное изображение для вырезания области в этом режиме не декодируется. В режиме high резервная загрузка сохраняется.
Настройка
Не задавайте gpuTier для автоопределения:
const renderer = new SeatmapBookingRenderer(container, {
publicKey: 'your-public-key',
});
Для фиксированного режима устройства:
const renderer = new SeatmapBookingRenderer(container, {
publicKey: 'your-public-key',
gpuTier: 'constrained',
});
Допустимы high и constrained. Явная настройка имеет приоритет над параметром URL gpuTier, а параметр — над автоопределением. Для проверки добавьте ?gpuTier=constrained к адресу страницы с рендерером.
Проверка
Включите debug: true, чтобы проверить выбранный режим и загрузку фона в консоли браузера. Проверьте схемы с тайлами и только с превью на физических устройствах, поддерживаемых приложением. Эмуляция на компьютере не подтверждает поведение памяти телефона.