Хорошая производительность сцены позволяет другим людям использовать ее с наибольшей отдачей и в соответствии с замыслом ее создателя. Используя приведенную ниже информацию в качестве руководства, вы можете оптимизировать свои сцены в случаях, когда наблюдается низкая производительность сцены, в том числе медленная загрузка слоя, проблемы при навигации или общая медлительность. Оптимизацию производительности сцены можно разделить на следующие категории:
- Оптимизация браузера и аппаратных настроек
- Просмотр сцен
- Создание сцен
- Создание ресурсов для сцен
Оптимизация браузера и аппаратных настроек
В целом, вкладки браузеров используют память ЦПУ и 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, если вы работаете со сценами глобального масштаба, когда камера располагается в зените или при создании сцен внутри помещений. Кроме того, если сведения о рельефе в данной сцене в принципе не важны, его можно отключить.
- Стартовый вид – Сохраните стартовый вид, при котором камера располагается по возможности на удалении от поверхности и с углом, близким к зениту. Это сократит количество вычислении геометрии поверхности и выравнивания по рельефу при загрузке сцены.
- Обрезка по экстенту - в локальных сценах обрежьте сцену по экстенту области проекта. Чем меньшая площадь поверхности и меньшее число символов будут в сцене, тем выше будет производительность отрисовки и с меньшими вычислительными затратами.
Cлайды
Вышеупомянутые рекомендации применяются также при фотосъемке слайдов. Изменение углов камеры, видимости слоя и высоты – это те настройки, которые вы можете выполнить, чтобы улучшить производительность сцены:
- Угол камеры – настройка угла камеры при фотосъемке слайдов может существенно влиять на производительность. Дополнительные сведения см. выше в разделе Навигация.
- Видимость слоя – В случаях, когда перекрываются несколько слоев или когда определенные слои в текущем виде слайда не нужны, отключите ненужные слои во время фотосъемки слайдов. Дополнительные сведения см. в разделе Видимость слоев.
- Рельеф – В случаях, когда 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 или в Map Viewer Classic.
- Вырезание данных – также можно обрезать данные по экстенту слоя, чтобы сэкономить ресурсы памяти. Можно обрезать объекты по контуру другого объекта или обрезать слои листов в ArcGIS Pro.