Как программы САПР отображают параметрические модели?

Программное обеспечение, такое как Catia, SolidWorks и тому подобное, может визуализировать сложные модели при проектировании.

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

Мой вопрос: как они визуализируют такую ​​сложную геометрию без растеризации? Как они это делают так быстро?


person Dean    schedule 20.06.2017    source источник
comment
Не могли бы вы определить, что для вас значит растеризация? Если вы имеете в виду упрощение точной геометрии до треугольных сеток для целей визуализации, то CATIA, конечно же, делает это. Все поверхности визуализируются треугольными сетками, а все кривые визуализируются ломаными линиями. Можно указать максимальное отклонение между точной геометрией и сетками. Для больших сборок можно использовать методы LOD (уровень детализации). В целом требования к визуализации в CAD-системах ниже, чем в некоторых играх.   -  person gdir    schedule 20.06.2017


Ответы (2)


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

person abenci    schedule 21.06.2017

Экспорт таких моделей в растровые треугольные сетки дает огромные файлы.

Не совсем правильно. Когда вы запрашиваете у Solidworks сетку, вы также предоставляете качество, которое повлияет на количество получаемых вами треугольников — может быть миллионы, а может быть всего дюжина.

Пакеты САПР работают с большинством тел/форм аналитически — у них есть формула. Я предполагаю, что любой другой 3D-движок делает то же самое, дело в том, что формат аналитических данных, которые используют разные движки, не одинаков. Так что вам нужно конвертировать из одного в другой, используя треугольники, формат, который все понимают.

person Vlad    schedule 23.06.2017