Содержание


Для версии LIRA-CAD* 2025 существенно обновлена графическая подсистема, обеспечивающая базовую графику и визуализацию модели проектируемого объекта.

Что это даёт:

  1. Совместимость с широким спектром графического оборудования.
  2. Более высокая скорость для проектирования сложных объектов.
  3. Новые визуальные эффекты для повышения качества изображения.

Теперь рассмотрим подробнее.


Совместимость с широким спектром графического оборудования

Графическая подсистема LIRA-CAD до версии 2025 опиралась на интерфейс стандарта OpenGL. В прежних версиях использовались возможности программно-аппаратной платформы на уровне стандарта OpenGL 1.1 образца 1998 года. Это обеспечивало возможность работы нашего ПО даже на самых старых и простых видеокартах.

Однако, в последнее время у некоторых производителей чипов для видеокарт наметилась тенденция отказа от поддержки старых стандартов. Особенно при установке обновления драйверов. Это создало ряд неудобств нашим пользователям, применяющим прогрессивное оборудование. Переход на новый наиболее современный из существующих стандарт OpenGL 4.6 сделал бы невозможной работу наших пользователей на оборудовании, проверенном временем.

Поэтому было принято решение реализовать гибкую подсистему базовой графики, опционно подстраиваемую под особенности оборудования на стороне пользователя. На основе этой базовой графики была разработана новая подсистема визуализации, которая предлагает широкий спектр настроек и позволяет опционно выбирать технологии, поддерживаемые конкретной программно-аппаратной вычислительной платформой.


Новые визуальные эффекты для повышения качества изображения

Новые стандарты графического интерфейса OpenGL 4.6 диктуют использование программируемого конвейера визуализации, основанного на шейдерах. Шейдеры – это особые программы, написанные на языке GLSL, загружаемые в видеокарту и исполняемые в многопоточном режиме графическими процессорами (GPU), число которых в современных видеокартах может достигать нескольких тысяч. Это даёт не только прирост скорости рендеринга, но и большую гибкость в достижении визуальных эффектов.

Следуя традициям LIRA-CAD, исповедуя принципы открытой архитектуры, разработчики включили в дистрибутив набор шейдеров в исходном коде на языке GLSL, что даёт возможность программистам в организации пользователя модифицировать шейдеры по своему усмотрению для достижения особых визуальных эффектов.

Теперь в арсенале проектировщика следующие эффекты:

  • Тени, отбрасываемые объектами на поверхности других объектов. Настраивается мягкость краёв теней и глубина эффекта тени.
  • Источник света, закреплённый в пространстве или динамически связанный с камерой с управляемым смещением от точки наблюдения.
  • Расчёт освещённости по алгоритму Фонга с интерполяцией нормалей, что обеспечивает корректную визуализацию бликов на гладких поверхностях.
  • Использование карты нормалей для визуальной имитации рельефных поверхностей.
  • Эффект воздушной перспективы, обеспечиваемый за счёт настраиваемой модели дымки или тумана.
  • Эффект рассеянного затенения, подчёркивающий характер формы проектируемых объектов. Может использоваться самостоятельно или в комбинации с другими эффектами.
  • Аппаратное сглаживание линий устраняет эффект ступенчатости, присущий растровым изображениям, что делает линии ровными без потери скорости.

Разумеется, никуда не исчезли и остались доступными и другие визуальные эффекты, знакомые по предыдущим версиям:

  • Текстурирование поверхности предустановленными и пользовательскими текстурами материалов.
  • Собственные тени объектов, выявляющие объём за счёт различия яркости освещённых и неосвещённых частей сцены.
  • Регулируемая прозрачность и полупрозрачность отдельных элементов и объектов в целом.
  • Окрашивание элементов конструкции в зависимости от их жесткостей, назначенных материалов, типов элементов или внесенных изменений и по другим признакам.

Более высокая скорость для проектирования сложных объектов

Использование шейдерной графики по стандарту OpenGL 4.6 позволило существенно повысить скорость получения изображения проектируемых объектов. Это делает более комфортной работу проектировщика с большими проектами, насыщенными деталями.

Работа шейдеров в многопоточном режиме на нескольких тысячах графических процессоров заметно повышает количество кадров в секунду при рендеринге сцены с вращением или перемещении виртуальной камеры. Реакция программы на перемещение мыши становится более быстрой. Теперь плавно визуализируются даже такие большие сцены, на которых раньше ощущалась задержка.

Для иллюстрации данного тезиса мы использовали модель EvolutionTower.spf из примеров в комплекте поставки LIRA-CAD. Модель характерна повышенной этажностью и типичным для многих проектов сочетанием линий и граней.

Были проведены замеры скорости при нескольких комбинациях настроек визуализации. Результаты выражены в количестве кадров в секунду (fps), достигаемых при динамичной визуализации по команде «Показать всё» (Zoom All). На каждой комбинации настроек проведена серия тестов, результаты видны на иллюстрациях, в таблице приведены примерные усреднённые показатели.


Таблица. Результаты теста производительности

Настройки визуализации Производительность,fps
Без шейдеров (технология прежних версий) 125...127
Шейдеры со всеми визуальными эффектами, включая рассеянное затенение (SSAO) 150...160
Шейдеры с основным набором эффектов (освещённость по Фонгу, падающие тени) 700...800
Шейдеры без эффектов (только освещённость по Фонгу) 1050...1100

Таким образом, можно заметить, что даже при использовании всех визуальных эффектов, включая самые ресурсоёмкие, скорость рендеринга модернизированным графическим ядром возросла по сравнению с прежними технологиями.

При использовании же минималистического набора основных эффектов на сценах, подобных тестовому примеру проекта, скорость возрастает в 7...8 раз.

Использование текстур, гамма-коррекция и применение сглаживания линий практически не оказывает отрицательного влияния на скорость визуализации.

Визуализация с набором эффектов, включая рассеянное затенение

Визуализация с набором эффектов, включая рассеянное затенение

Визуализация с основным рабочим набором эффектов

Визуализация с основным рабочим набором эффектов

Визуализация шейдерами без особых визуальных эффектов

Визуализация шейдерами без особых визуальных эффектов

Визуализация без использования шейдеров (прежняя технология)

Визуализация без использования шейдеров (прежняя технология)

Визуализация результатов расчёта

Версия LIRA-CAD 2025 получила обновлённое графическое ядро, основанное на применении технологий шейдерной графики. Соответственно, режимы визуализации с использованием шейдеров доступны и при осмотре аналитической расчётной модели с результатами расчёта.

Использование шейдеров для визуализации повышает скорость и качество формирования изображения, что обеспечивает более гладкие линии и более плавную реакцию на перемещения мыши при управлении виртуальной камерой.

Включение шейдерной графики GLSL в окне просмотра результатов расчёта

Включение шейдерной графики GLSL в окне просмотра результатов расчёта

Для обеспечения соответствия цветов конечных элементов на изображении расчётной модели цветам ячеек диапазонов шкалы рекомендуется отключить всевозможные эффекты, связанные с освещением, и прочие эффекты тонирования. В свойствах вида следует проследить, чтобы была включена визуализация тех компонентов модели, которые требуется видеть на схеме. Например, АЖТ.

При визуализации результатов актуально использование опции «Учитывать вес линий», которая может быть включена или выключена как в свойствах вида, так и в настройках визуализации для активного графического окна.

Опция «Учитывать вес линий»

Опция «Учитывать вес линий»

При одновременной визуализации исходной и деформированной схемы, например для анализа характера перемещений узлов конструкции, может быть полезна опция полупрозрачности элементов. Включается в диалоге «Настройки визуализации» для активного графического окна.

Полупрозрачность элементов

Полупрозрачность элементов

Отображение исходной схемы и векторов перемещений узлов

Отображение исходной схемы и векторов перемещений узлов

Одновременное отображение исходной и деформированной схемы, а также векторов перемещения узлов делает картину информативнее, однако может загромождать изображение излишними для сложных конструкций деталями. И тот и другой эффект является опционным и может быть отключен в диалоге «Отображение результатов». Там же регулируются размеры изображений узлов и толщины линий для изображения результатов в стержневых элементах.

Диалог «Отображение результатов»

Диалог «Отображение результатов»

Для обеспечения эффективной и совместимой с различным оборудованием возможности экспорта растровых изображений, печати в pdf и на принтер рекомендуется проследить, включена ли технология FBO.

Включаем технологию FBO

Включаем технологию FBO

Карты нормалей в LIRA-CAD

Возможность использования карт нормалей открылась в САПФИР 2025 в связи с переходом от использования фиксированного конвейера рендеринга OpenGL 1.1 к программируемому по стандарту OpenGL 4.6.

Используя карты нормалей, можно существенно повысить детализацию изображения проектируемого объекта без увеличения количества полигонов (граней) в модели.

Этой же задаче служат текстуры. Однако текстурированные поверхности всё ещё отражают свет как плоские. В то время как карты нормалей наделяют плоские поверхности внешним видом рельефных.

Настройка визуального материала с картой нормалей

Настройка визуального материала с картой нормалей

Изображения с картами нормалей представляют собой обычные растровые файлы форматов BMP, JPG, PNG. Каждый пиксель такого изображения трактуется не как цвет RGB, а как XYZ вектора нормали в данной точке поверхности. Можно импортировать такие файлы для придания рельефности поверхностям объектов. Кроме того, LIRA-CAD предоставляет ряд встроенных инструментов для генерирования карт нормалей.

Ниже для сравнения приводится изображение одной и той же модели без использования и с использованием карт нормалей.

Изображение модели без применения карт нормалей

Изображение модели без применения карт нормалей

Изображение с использованием карт нормалей

Изображение с использованием карт нормалей

Чтобы можно было использовать карты нормалей, тем самым создавая эффект рельефных поверхностей, называемый также эффектом «бампинга» (bumping), в настройках программы должна быть включена опция Визуальные эффекты.

Опция «Визуальные эффекты» включена для использования карт нормалей

Опция «Визуальные эффекты» включена для использования карт нормалей

Таким образом, обновлённая графическая подсистема обеспечивает повышение как эффективности, так и качества визуализации проектируемых объектов.

Подробнее о картах нормалей



Творческих успехов, коллеги!

Заметили ошибку? Выделите ее и нажмите Ctrl+Enter, чтобы сообщить нам.

  • 280
Поделиться публикацией:

Олег Палиенко

Ведущий инженер-программист компании «ЛИРА САПР».
Разработка программных комплексов

Другие публикации этого автора


Комментарии

Написать