Хорошая производительность сцены позволяет другим людям использовать ее с наибольшей отдачей и в соответствии с замыслом ее создателя. Используя приведенную ниже информацию в качестве руководства, вы можете оптимизировать свои сцены в случаях, когда наблюдается низкая производительность сцены, в том числе медленная загрузка слоя, проблемы при навигации или общая медлительность. Оптимизацию производительности сцены можно разделить на следующие категории:
- Настройки браузера и аппаратные настройки
- Просмотр сцен
- Создание сцен
- Создание ресурсов для сцен
Настройки браузера и аппаратные настройки
В целом, вкладки браузеров используют память ЦПУ и GPU, и в каждом браузере эти ресурсы распределяются по-своему. Закройте все вкладки браузера Scene Viewer и закройте все приложения, работающие в 3D или требующие значительных ресурсов памяти. Это поможет существенно сэкономить ресурсы памяти на вашем компьютере. Кроме того, чтобы для поддержания наилучшей производительности Scene Viewer следует убедиться, что ваше оборудование и браузер соответствуют последним требованиям Scene Viewer.
Просмотр сцен
Следуя приведенным ниже рекомендациям по навигации или настройке теней, вы можете улучшить производительность при просмотре сцен.
- Производительность или качество – Измените настройки на Производительность, для того, чтобы существенно понизить расходование ресурсов памяти, улучшить качество отображения и повысить стабильность.
- Навигация – Перемещаясь по сценам, вы можете заметить, что угол камеры влияет на производительность. Плоские углы камеры – где вы можете видеть горизонт – потенциально могут влиять на ресурсы памяти. С такими углами Scene Viewer должен загружать и отображать все объекты между камерой и горизонтом. Если эти углы вам не нужны, это будет способствовать удержанию угла камеры ближе к положению вид сверху сцены. Кроме того, если вы не будете постоянно шевелить мышью при загрузке сцены, это снизит количество отрисовок сцены, которое выполняет Scene Viewer.
- Видимость слоя – рекомендуется включать только те слои, которые вам необходимы в каждом конкретном случае. За счет этого повысится производительность, так как Scene Viewer будет отображать только нужные вам слои. Кроме того, отключите видимость слоев с 3D символами и слоев высот при работе с удаленными объектами, когда их невозможно разглядеть в 3D символах.
- Тени – Отключите тени, если они не нужны в сцене. Тени затрачивают достаточно много ресурсов памяти, поэтому, если в сцене отображаются, например, тысячи зданий с тенями, она будет работать очень медленно.
Создание сцен
При создании сцен их характеристики, такие как количество видимых слоев, типы условных обозначений, композиция слайда являются существенными.
Число видимых слоев
Scene Viewer имеет определенный предел памяти для каждого слоя в сцене. Чем меньше будет число видимых слоев, тем меньше перерасходуются ресурсы ЦПУ и GPU, т.к. во время загрузки каждому слою выделяется определенный ресурс памяти. Поэтому рекомендуется снизить количество слоев в сцене до 12 или меньше. Если у вас более дюжины слоев, покрывающих область, то вместо одной сцены лучше создать несколько сцен с меньшим количеством слоев. Либо, если у вас есть несколько слоев с одинаковым типом геометрии, например, слоев 3D-объектов сцены, их можно объединить в один слой 3D-объектов. Более подробно читайте ниже в разделе Создание ресурсов для сцен.
Символы слоя
Условные обозначения слоя также оказывают большее влияние на производительность сцены в целом. Сложность (количество геометрических поверхностей и ребер) символов объектов наряду с их общим количеством в сцене напрямую влияет на скорость их отображения. Например, пара десятков объектов с большим количеством граней и ребер могут отрисовываться по времени столько же, сколько сотня объектов с более простыми символами. Если вы заметили, что сцена отображается медленно, вероятно, следует изменить условные обозначения.
- Простые и тематические точечные 3D-символы – используйте простые и тематические 3D-символы с небольшим числом граней для повышения производительности отрисовки. Кроме того, на отрисовку каждого символа выделяется определенный ресурс памяти, поэтому чем меньше разных типов символов присутствует в сцене, тем ниже вероятность сбоя при отображении. Хорошим правилом считается ограничение количества уникальных типов символов до нескольких десятков.
- 2D-символы – 2D-символы не столь сложны и отрисовываются быстрее, чем 3D-объекты. Точечные символы 2D, а также линии и полигоны требуют меньшее количество вычислений во время отрисовки, чем 3D-объекты, пути и вытянутые объекты.
- Режимы высоты – Задайте для этого слоя Абсолютную высоту, если в данных есть z-значения.
- Надписи – Выключите отображение надписей, если в слое сотни точек, чтобы сократить расход ресурсов памяти и не допустить возникновения проблем с производительностью и отображением сцены.
- Упорядочивание – Включите упорядочивание, чтобы удалить перекрывающиеся точечные слои, которые уменьшают число объектов и вычислений, необходимых для Scene Viewer.
Свойства сцены
Для повышения производительности можно настроить следующие параметры сцены. Стартовые виды и рельеф существенно влияют на производительность сцены.
- Рельеф – Отключите terrain elevation, если вы работаете со сценами глобального масштаба, когда камера располагается в зените или при создании сцен внутри помещений. Кроме того, если сведения о рельефе в данной сцене в принципе не важны, его можно отключить.
- Стартовый вид – Сохраните стартовый вид, при котором камера располагается по возможности на удалении от поверхности и с углом, близким к зениту. Это сократит количество вычислении геометрии поверхности и выравнивания по рельефу при загрузке сцены.
- Обрезка по экстенту - в локальных сценах обрежьте сцену по экстенту области проекта. Чем меньшая площадь поверхности и меньшее число символов будут в сцене, тем выше будет производительность отрисовки и с меньшими вычислительными затратами.
Слайды
Вышеупомянутые рекомендации применяются также при фотосъемке слайдов. Изменение углов камеры, видимости слоя и высоты – это те настройки, которые вы можете выполнить, чтобы улучшить производительность сцены:
- Угол камеры – настройка угла камеры при фотосъемке слайдов может существенно влиять на производительность. Дополнительные сведения см. выше в разделе Навигация.
- Видимость слоя – В случаях, когда перекрываются несколько слоев или когда определенные слои в текущем виде слайда не нужны, отключите ненужные слои во время фотосъемки слайдов. Дополнительные сведения см. в разделе Видимость слоев.
- Рельеф – В случаях, когда terrain elevation не нужен, лучше его отключить, чтобы сэкономить ресурсы. Также высоты не нужны, если в сцене используется слой сцены интегрированной модели mesh, который полностью покрывает высоты в виде слайда.
Создание ресурсов для сцен
Вы можете влиять на производительность сцены, изменяя исходные данные непосредственно в ArcGIS Pro и публикуя соответствующие слои. Сокращение числа слоев в сцене и понижение уровня сложности слоев с ArcGIS Pro уменьшит потребляемую память и повысит производительность отрисовки.
Число слоев
Если у вас есть несколько слоев на одну и ту же территорию с одинаковым типом геометрии, то вы можете значительно повысить производительность, объединив эти слои в один. Это хороший вариант, если у вас более 25 слоев в сцене. Используйте ArcGIS Pro для объединения нескольких исходных слоев в сцене в один. Затем заново опубликуйте слой на ArcGIS Online или ArcGIS Enterprise. Примите во внимание следующее:
- Объединение слоев - объедините несколько сцен или слоев объектов в один, если все они имеют одинаковый тип геометрии. Для слоев 3D-объектов сцены измените исходный класс объектов мультипатч в ArcGIS Pro. Для слияния объектов в один слой можно выполнить копирование и вставку объектов в ArcGIS Pro. В общем, лучше всего, если слой будет один; избегайте его дробления на несколько слоев, и тогда производительность будет оптимальной.
- Слияние слоев листов - если у вас несколько слоев листов, покрывающих нужную область, например, спутниковые снимки, выполните слияние слоев листов в ArcGIS Pro для получения одного слоя.
Сложность слоев
Вы можете свести к минимуму потребление ресурсов памяти в слоях и повысить производительность при загрузке слоев и отрисовки, если понизите сложность объектов одним из следующих способов:
- Генерализация – можно сократить количество вершин с помощью инструментов упрощения линий или упрощения полигонов в ArcGIS Pro.
- Фильтр – скройте ненужные объекты в слое с помощью фильтра путем создания слоев запроса в ArcGIS Pro или применения фильтров в Map Viewer.
- Вырезание данных – также можно обрезать данные по экстенту слоя, чтобы сэкономить ресурсы памяти. Можно обрезать объекты по контуру другого объекта или обрезать слои листов в ArcGIS Pro.