Тесселяция (компьютерная графика) - Википедия - Tessellation (computer graphics)
![](http://upload.wikimedia.org/wikipedia/commons/thumb/1/11/Tesselation_pipeline.svg/290px-Tesselation_pipeline.svg.png)
В компьютерная графика, мозаика используется для управления наборами данных полигоны (иногда называют наборы вершин) представить объекты в сцене и разделить их на подходящие структуры для рендеринг. Особенно для рендеринг в реальном времени, данные мозаика в треугольники, например в OpenGL 4.0 и Direct3D 11.[1][2]
В рендеринге графики
Ключевое преимущество тесселяции для графика в реальном времени в том, что он позволяет динамически добавлять и вычитать детали из 3D-полигональная сетка и его края силуэта на основе контрольных параметров (часто расстояние до камеры). В ранее передовых методах реального времени, таких как отображение параллакса и рельефное отображение детали поверхности можно было моделировать на пиксельном уровне, но детализация краев силуэта была существенно ограничена качеством исходного набора данных.[3]
В Direct3D 11 конвейер (часть DirectX 11), графический примитив это пластырь.[4] В тесселлятор генерирует основанный на треугольнике мозаика патча в соответствии с параметрами тесселяции, такими как TessFactor, который контролирует степень дисперсности сетка. Тесселяция вместе с шейдеры например, Шейдер Фонга, позволяет создавать более гладкие поверхности, чем у исходной сетки.[4] Путем разгрузки процесса тесселяции на GPU аппаратно, сглаживание может выполняться в реальном времени. Тесселяцию также можно использовать для реализации подразделения поверхностей, уровень детализации масштабирование и штраф отображение смещения.[5] OpenGL 4.0 использует аналогичный конвейер, где тесселяция в треугольники контролируется Шейдер управления тесселяцией и набор из четырех параметров тесселяции.[6]
В системе автоматизированного проектирования
В системы автоматизированного проектирования построенная конструкция представлена граничное представление топологическая модель, в которой аналитические трехмерные поверхности и кривые, ограниченные гранями, ребрами и вершинами, составляют непрерывную границу трехмерного тела. Произвольные трехмерные тела часто слишком сложны для непосредственного анализа. Таким образом, они аппроксимируются (тесселируются) с помощью сетка небольших, легко анализируемых частей трехмерного объема - обычно либо неправильной формы тетраэдры, или нерегулярный шестигранник. Сетка используется для анализ методом конечных элементов.[нужна цитата ]
Сетка поверхности обычно создается для отдельных граней и кромок (приблизительно полилинии ), так что исходные предельные вершины входят в сетку. Чтобы аппроксимация исходной поверхности соответствовала потребностям дальнейшей обработки, для генератора поверхностной сетки обычно определяются три основных параметра:
- Максимально допустимое расстояние между многоугольником плоской аппроксимации и поверхностью (известное как «провисание»). Этот параметр гарантирует, что сетка достаточно похожа на исходную аналитическую поверхность (или полилиния похожа на исходную кривую).
- Максимально допустимый размер аппроксимирующего многоугольника (для триангуляции это максимально допустимая длина сторон треугольника). Этот параметр обеспечивает достаточную детализацию для дальнейшего анализа.
- Максимально допустимый угол между двумя соседними многоугольниками аппроксимации (на одной грани). Этот параметр гарантирует, что даже очень маленькие неровности или впадины, которые могут оказать существенное влияние на анализ, не исчезнут в сетке.
Алгоритм создания сетки обычно управляется тремя вышеупомянутыми и другими параметрами. Некоторые виды компьютерного анализа построенной конструкции требуют адаптивное уточнение сетки, который представляет собой сетку, сделанную более тонкой (с использованием более строгих параметров) в областях, где для анализа требуется более подробная информация.[1][2]
Смотрите также
- ATI TruForm - бренд их аппаратной тесселяции с 2001 г.
- TeraScale: аппаратная тесселяция - более новый агрегат с июня 2007 г.
- GCN Геометрический процессор - самый актуальный блок с января 2011 г.
Смотрите также
внешняя ссылка
Рекомендации
- ^ а б Графическая система OpenGL®: спецификация (версия 4.0 (основной профиль) - 11 марта 2010 г.)
- ^ а б MSDN: Обзор тесселяции
- ^ Рост, Рэнди (30 июля 2009 г.). Язык шейдинга OpenGL. Эддисон-Уэсли. п. 345. ISBN 978-0321637635.
- ^ а б Аби-Чахла, Феди. «Тесселяция». Оборудование Тома. Получено 27 апреля 2013.
- ^ Тарик, Сара. «Тесселяция D3D11» (PDF). Nvidia. Получено 27 апреля 2013.
- ^ «Тесселяция». OpenGL. Получено 27 апреля 2013.