Введение в методы переменного уровня детализации...

41
Введение в методы переменного уровня детализации полигональных сеток Алексей Игнатенко Алексей Игнатенко [email protected] [email protected]

Upload: alice-spence

Post on 01-Jan-2016

62 views

Category:

Documents


7 download

DESCRIPTION

Введение в методы переменного уровня детализации полигональных сеток. Алексей Игнатенко [email protected]. Основные темы. Что такое уровень детализации Статические и динамические методы Видозависимость Реализация - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Введение в методы переменного уровня детализации полигональных сеток

Введение в методы переменного уровня детализации

полигональных сеток

Алексей ИгнатенкоАлексей Игнатенко[email protected]@graphics.cs.msu.su

Алексей ИгнатенкоАлексей Игнатенко[email protected]@graphics.cs.msu.su

Page 2: Введение в методы переменного уровня детализации полигональных сеток

Основные темы

• Что такое уровень детализацииЧто такое уровень детализации

• Статические иСтатические и динамические методыдинамические методы

• ВидозависимостьВидозависимость

• РеализацияРеализация

По материалам учебного курса при По материалам учебного курса при конфереренции конфереренции ACM SIGGRAPH 2001ACM SIGGRAPH 2001

• Что такое уровень детализацииЧто такое уровень детализации

• Статические иСтатические и динамические методыдинамические методы

• ВидозависимостьВидозависимость

• РеализацияРеализация

По материалам учебного курса при По материалам учебного курса при конфереренции конфереренции ACM SIGGRAPH 2001ACM SIGGRAPH 2001

Page 3: Введение в методы переменного уровня детализации полигональных сеток

Мотивация

Очень важен интерактивный рендеринг Очень важен интерактивный рендеринг геометрических данных большого объемагеометрических данных большого объема

• Научная и медицинская визуализацияНаучная и медицинская визуализация

• CADCAD

• СимуляторыСимуляторы

• ИгрыИгры

Очень важен интерактивный рендеринг Очень важен интерактивный рендеринг геометрических данных большого объемагеометрических данных большого объема

• Научная и медицинская визуализацияНаучная и медицинская визуализация

• CADCAD

• СимуляторыСимуляторы

• ИгрыИгры

Page 4: Введение в методы переменного уровня детализации полигональных сеток

Мотивация: большие модели

ПроблемаПроблема

• Полигональные модели часто слишком сложны для Полигональные модели часто слишком сложны для интерактивной визуализацииинтерактивной визуализации

• Более того, чем быстрее становится «железо» тем Более того, чем быстрее становится «железо» тем больше становятся модели.больше становятся модели.

ПроблемаПроблема

• Полигональные модели часто слишком сложны для Полигональные модели часто слишком сложны для интерактивной визуализацииинтерактивной визуализации

• Более того, чем быстрее становится «железо» тем Более того, чем быстрее становится «железо» тем больше становятся модели.больше становятся модели.

Page 5: Введение в методы переменного уровня детализации полигональных сеток

Пример модели

10 миллионов треугольников10 миллионов треугольников10 миллионов треугольников10 миллионов треугольников

Page 6: Введение в методы переменного уровня детализации полигональных сеток

Пример модели

80 миллионов треугольников80 миллионов треугольников80 миллионов треугольников80 миллионов треугольников

Page 7: Введение в методы переменного уровня детализации полигональных сеток

Уровень детализации:Основная идея

• Возможное решение:Возможное решение:

• Упрощение геометрии малых или удаленных объектовУпрощение геометрии малых или удаленных объектов

• Известно как Известно как Level of Detail (LOD)Level of Detail (LOD)

– Так же известно как Так же известно как polygonal simplification, geometric polygonal simplification, geometric simplification, mesh reduction, multiresolution modeling,…simplification, mesh reduction, multiresolution modeling,…

• Возможное решение:Возможное решение:

• Упрощение геометрии малых или удаленных объектовУпрощение геометрии малых или удаленных объектов

• Известно как Известно как Level of Detail (LOD)Level of Detail (LOD)

– Так же известно как Так же известно как polygonal simplification, geometric polygonal simplification, geometric simplification, mesh reduction, multiresolution modeling,…simplification, mesh reduction, multiresolution modeling,…

Page 8: Введение в методы переменного уровня детализации полигональных сеток

Уровень детализации: традиционный подход

Создание уровней детализации объектов Создание уровней детализации объектов ((LODs)LODs)Создание уровней детализации объектов Создание уровней детализации объектов ((LODs)LODs)

Page 9: Введение в методы переменного уровня детализации полигональных сеток

Уровень детализации: традиционный подход

Более удаленные объекты используют более Более удаленные объекты используют более грубые уровни детализациигрубые уровни детализацииБолее удаленные объекты используют более Более удаленные объекты используют более грубые уровни детализациигрубые уровни детализации

Page 10: Введение в методы переменного уровня детализации полигональных сеток

Традиционные подход: статический LOD

Традиционный подход:Традиционный подход:• Во время препроцессинга создается отдельный Во время препроцессинга создается отдельный LOD LOD для для

каждого объектакаждого объекта

• Во время визуализации для каждого объекта выбирается Во время визуализации для каждого объекта выбирается один из уровней детализации в зависимости от один из уровней детализации в зависимости от расстояния до объекта.расстояния до объекта.

УровниУровни создаются на этапе препроцессинга и создаются на этапе препроцессинга и имеют фиксированное разрешениеимеют фиксированное разрешение.. Такой Такой подход называется подход называется статический статический LODLOD

Традиционный подход:Традиционный подход:• Во время препроцессинга создается отдельный Во время препроцессинга создается отдельный LOD LOD для для

каждого объектакаждого объекта

• Во время визуализации для каждого объекта выбирается Во время визуализации для каждого объекта выбирается один из уровней детализации в зависимости от один из уровней детализации в зависимости от расстояния до объекта.расстояния до объекта.

УровниУровни создаются на этапе препроцессинга и создаются на этапе препроцессинга и имеют фиксированное разрешениеимеют фиксированное разрешение.. Такой Такой подход называется подход называется статический статический LODLOD

Page 11: Введение в методы переменного уровня детализации полигональных сеток

Преимущества статического LOD

Легко программируетсяЛегко программируется

Создание и визуализация разделеныСоздание и визуализация разделены

• Создание Создание LODLODов не учитывает ограничений ов не учитывает ограничений интерактивной визуализацииинтерактивной визуализации

• От визуализации требуется только выбрать нужный От визуализации требуется только выбрать нужный LODLOD

Легко программируетсяЛегко программируется

Создание и визуализация разделеныСоздание и визуализация разделены

• Создание Создание LODLODов не учитывает ограничений ов не учитывает ограничений интерактивной визуализацииинтерактивной визуализации

• От визуализации требуется только выбрать нужный От визуализации требуется только выбрать нужный LODLOD

Page 12: Введение в методы переменного уровня детализации полигональных сеток

Преимущества статического LOD

Позволяет на полную использовать Позволяет на полную использовать аппаратное ускорениеаппаратное ускорение

• Статические Статические LODLODы можно легко упаковать в дисплейные ы можно легко упаковать в дисплейные списки, вершинные массивы, страйпы и т.д.списки, вершинные массивы, страйпы и т.д.

• Это позволяет намного ускорить визуализацию, т.к. такие Это позволяет намного ускорить визуализацию, т.к. такие структуры рисуются на современной аппаратуре в 3-5 структуры рисуются на современной аппаратуре в 3-5 раз быстрее чем неорганизованные полигоныраз быстрее чем неорганизованные полигоны

Позволяет на полную использовать Позволяет на полную использовать аппаратное ускорениеаппаратное ускорение

• Статические Статические LODLODы можно легко упаковать в дисплейные ы можно легко упаковать в дисплейные списки, вершинные массивы, страйпы и т.д.списки, вершинные массивы, страйпы и т.д.

• Это позволяет намного ускорить визуализацию, т.к. такие Это позволяет намного ускорить визуализацию, т.к. такие структуры рисуются на современной аппаратуре в 3-5 структуры рисуются на современной аппаратуре в 3-5 раз быстрее чем неорганизованные полигоныраз быстрее чем неорганизованные полигоны

Page 13: Введение в методы переменного уровня детализации полигональных сеток

Недостатки статического LOD

Вопрос: Почему же возникает необходимость Вопрос: Почему же возникает необходимость использовать что-то кроме статического использовать что-то кроме статического LOD?LOD?

Ответ: Потому что иногда статический Ответ: Потому что иногда статический LOD LOD не не подходит для радикального упрощения геометрииподходит для радикального упрощения геометрии

Например:Например:• ЛандшафтыЛандшафты

• Трехмерные изоповерхностиТрехмерные изоповерхности

• Данные с трехмерных дистанционных сканеровДанные с трехмерных дистанционных сканеров

• Сложные Сложные CADCAD-модели-модели

Вопрос: Почему же возникает необходимость Вопрос: Почему же возникает необходимость использовать что-то кроме статического использовать что-то кроме статического LOD?LOD?

Ответ: Потому что иногда статический Ответ: Потому что иногда статический LOD LOD не не подходит для радикального упрощения геометрииподходит для радикального упрощения геометрии

Например:Например:• ЛандшафтыЛандшафты

• Трехмерные изоповерхностиТрехмерные изоповерхности

• Данные с трехмерных дистанционных сканеровДанные с трехмерных дистанционных сканеров

• Сложные Сложные CADCAD-модели-модели

Page 14: Введение в методы переменного уровня детализации полигональных сеток

Радикальное упрощение

Для радикального упрощения геометрии:Для радикального упрощения геометрии:

• сложные объекты должны быть разбиты на простыесложные объекты должны быть разбиты на простые

• простые – скомбинированыпростые – скомбинированы

Это очень сложно или невозможно при Это очень сложно или невозможно при статическом подходестатическом подходе

Так что же можно сделать?Так что же можно сделать?

Для радикального упрощения геометрии:Для радикального упрощения геометрии:

• сложные объекты должны быть разбиты на простыесложные объекты должны быть разбиты на простые

• простые – скомбинированыпростые – скомбинированы

Это очень сложно или невозможно при Это очень сложно или невозможно при статическом подходестатическом подходе

Так что же можно сделать?Так что же можно сделать?

Page 15: Введение в методы переменного уровня детализации полигональных сеток

Динамический уровень детализации

Отличие от традиционного подхода:Отличие от традиционного подхода:

• Статический Статический LODLOD: создание уровней заранее перед : создание уровней заранее перед визуализациейвизуализацией

• Динамический Динамический LODLOD: создание структуры данных, из : создание структуры данных, из которой геометрия с нужной детализацией может быть которой геометрия с нужной детализацией может быть извлечена в реальном времени извлечена в реальном времени во время визуализацииво время визуализации..

Отличие от традиционного подхода:Отличие от традиционного подхода:

• Статический Статический LODLOD: создание уровней заранее перед : создание уровней заранее перед визуализациейвизуализацией

• Динамический Динамический LODLOD: создание структуры данных, из : создание структуры данных, из которой геометрия с нужной детализацией может быть которой геометрия с нужной детализацией может быть извлечена в реальном времени извлечена в реальном времени во время визуализацииво время визуализации..

Page 16: Введение в методы переменного уровня детализации полигональных сеток

Динамический уровень детализации: преимущества

Данный уровень детализации определяется Данный уровень детализации определяется точно, а не выбирается из заранее точно, а не выбирается из заранее полученного набора полученного набора LODLODов.ов.

• Следовательно, объекты используют не больше Следовательно, объекты используют не больше полигонов чем необходимополигонов чем необходимо

• Более эффективное использование ресурсовБолее эффективное использование ресурсов

Данный уровень детализации определяется Данный уровень детализации определяется точно, а не выбирается из заранее точно, а не выбирается из заранее полученного набора полученного набора LODLODов.ов.

• Следовательно, объекты используют не больше Следовательно, объекты используют не больше полигонов чем необходимополигонов чем необходимо

• Более эффективное использование ресурсовБолее эффективное использование ресурсов

Page 17: Введение в методы переменного уровня детализации полигональных сеток

Динамический уровень детализации: преимущества

Более плавная визуализацияБолее плавная визуализация

• Переключение между статическими Переключение между статическими LODLODами может ами может привести к эффекту «перепрыгивания»привести к эффекту «перепрыгивания»

• Динамические Динамические LOD LOD позволяют плавно изменять уровень позволяют плавно изменять уровень разбиения, устраняя этот эффектразбиения, устраняя этот эффект

Более плавная визуализацияБолее плавная визуализация

• Переключение между статическими Переключение между статическими LODLODами может ами может привести к эффекту «перепрыгивания»привести к эффекту «перепрыгивания»

• Динамические Динамические LOD LOD позволяют плавно изменять уровень позволяют плавно изменять уровень разбиения, устраняя этот эффектразбиения, устраняя этот эффект

Page 18: Введение в методы переменного уровня детализации полигональных сеток

Динамический уровень детализации: преимущества

• Поддерживает прогрессивную передачуПоддерживает прогрессивную передачу

• Поддерживает Поддерживает видозависимыевидозависимые ( (view-dependent)view-dependent) LODLOD

– Можно использовать текущие параметры виртуальной Можно использовать текущие параметры виртуальной камеры для определения лучшего представления для камеры для определения лучшего представления для данного вида.данного вида.

• Поддерживает прогрессивную передачуПоддерживает прогрессивную передачу

• Поддерживает Поддерживает видозависимыевидозависимые ( (view-dependent)view-dependent) LODLOD

– Можно использовать текущие параметры виртуальной Можно использовать текущие параметры виртуальной камеры для определения лучшего представления для камеры для определения лучшего представления для данного вида.данного вида.

Page 19: Введение в методы переменного уровня детализации полигональных сеток

Видозависимый LOD: варианты применения

Видозависимость используется для того, Видозависимость используется для того, чтобычтобы• Показывать близкие часть объекта с большей точностью, Показывать близкие часть объекта с большей точностью,

чем удаленныечем удаленные

• Показывать границы объекта или наиболее интересные Показывать границы объекта или наиболее интересные части с большей точностьючасти с большей точностью

• Показывать больше деталей там, куда смотрит Показывать больше деталей там, куда смотрит пользователь и меньше в области периферического пользователь и меньше в области периферического зрениязрения

Видозависимость используется для того, Видозависимость используется для того, чтобычтобы• Показывать близкие часть объекта с большей точностью, Показывать близкие часть объекта с большей точностью,

чем удаленныечем удаленные

• Показывать границы объекта или наиболее интересные Показывать границы объекта или наиболее интересные части с большей точностьючасти с большей точностью

• Показывать больше деталей там, куда смотрит Показывать больше деталей там, куда смотрит пользователь и меньше в области периферического пользователь и меньше в области периферического зрениязрения

Page 20: Введение в методы переменного уровня детализации полигональных сеток

Динамический уровень детализации: пример

Page 21: Введение в методы переменного уровня детализации полигональных сеток

Иерархический LOD

Видозависимые Видозависимые LODLOD могут решить проблему с могут решить проблему с большими объектамибольшими объектами

Иерархические Иерархические LOD LOD решают проблему маленьких решают проблему маленьких объектовобъектов• Разделение объектов на составляющиеРазделение объектов на составляющие

• На достаточном расстоянии упрощение составляющих, а не На достаточном расстоянии упрощение составляющих, а не объектовобъектов

Иерархический Иерархический LOD LOD подразумевает алгоритмы , подразумевает алгоритмы , модифицирующие топологию объектамодифицирующие топологию объекта

Видозависимые Видозависимые LODLOD могут решить проблему с могут решить проблему с большими объектамибольшими объектами

Иерархические Иерархические LOD LOD решают проблему маленьких решают проблему маленьких объектовобъектов• Разделение объектов на составляющиеРазделение объектов на составляющие

• На достаточном расстоянии упрощение составляющих, а не На достаточном расстоянии упрощение составляющих, а не объектовобъектов

Иерархический Иерархический LOD LOD подразумевает алгоритмы , подразумевает алгоритмы , модифицирующие топологию объектамодифицирующие топологию объекта

Page 22: Введение в методы переменного уровня детализации полигональных сеток

Иерархический LOD

Очень хорошо взаимодействует с Очень хорошо взаимодействует с видозависимым видозависимым LODLOD..

• Можно рассматривать всю сцену как один объект и Можно рассматривать всю сцену как один объект и упрощать его видозависимым способом.упрощать его видозависимым способом.

Иерархический Иерархический LODLOD также может также может использоваться в паре с традиционнымиспользоваться в паре с традиционным

Очень хорошо взаимодействует с Очень хорошо взаимодействует с видозависимым видозависимым LODLOD..

• Можно рассматривать всю сцену как один объект и Можно рассматривать всю сцену как один объект и упрощать его видозависимым способом.упрощать его видозависимым способом.

Иерархический Иерархический LODLOD также может также может использоваться в паре с традиционнымиспользоваться в паре с традиционным

Page 23: Введение в методы переменного уровня детализации полигональных сеток

Алгоритмы видозависимых LOD

Разработано достаточно много хороших Разработано достаточно много хороших алгоритмов видозависимых алгоритмов видозависимых LODLOD

Далее для примера будет рассмотрен Далее для примера будет рассмотрен алгоритм алгоритм VDS (View-Dependent simplification)VDS (View-Dependent simplification)

Разработано достаточно много хороших Разработано достаточно много хороших алгоритмов видозависимых алгоритмов видозависимых LODLOD

Далее для примера будет рассмотрен Далее для примера будет рассмотрен алгоритм алгоритм VDS (View-Dependent simplification)VDS (View-Dependent simplification)

Page 24: Введение в методы переменного уровня детализации полигональных сеток

Обзор метода VDS

Обзор метода Обзор метода VDS:VDS:

• На эпапе препроцессинга строится дерево вершин - На эпапе препроцессинга строится дерево вершин - иерархическая кластеризация вершин данной иерархическая кластеризация вершин данной полигональной сеткиполигональной сетки

• Во время рисования кластеры разворачиваются и Во время рисования кластеры разворачиваются и сворачиваются в зависимости от положения виртуальной сворачиваются в зависимости от положения виртуальной камерыкамеры

– Кластеры, которые становятся слишком маленькими, Кластеры, которые становятся слишком маленькими, сворачиваются, уменьшая общее число треугольниковсворачиваются, уменьшая общее число треугольников

Обзор метода Обзор метода VDS:VDS:

• На эпапе препроцессинга строится дерево вершин - На эпапе препроцессинга строится дерево вершин - иерархическая кластеризация вершин данной иерархическая кластеризация вершин данной полигональной сеткиполигональной сетки

• Во время рисования кластеры разворачиваются и Во время рисования кластеры разворачиваются и сворачиваются в зависимости от положения виртуальной сворачиваются в зависимости от положения виртуальной камерыкамеры

– Кластеры, которые становятся слишком маленькими, Кластеры, которые становятся слишком маленькими, сворачиваются, уменьшая общее число треугольниковсворачиваются, уменьшая общее число треугольников

Page 25: Введение в методы переменного уровня детализации полигональных сеток

Структуры данных

Дерево вершинДерево вершин• Содержит всю модельСодержит всю модель

• Представляет иерархию всех вершинПредставляет иерархию всех вершин

• Используется на каждом кадре для обновленияИспользуется на каждом кадре для обновления

Список активных треугольниковСписок активных треугольников• Представляет текущее упрощениеПредставляет текущее упрощение

• Содержит список треугольников для рисованияСодержит список треугольников для рисования

• Треугольники добавляются или удаляется в Треугольники добавляются или удаляется в результате операций с деревом вершин.результате операций с деревом вершин.

Дерево вершинДерево вершин• Содержит всю модельСодержит всю модель

• Представляет иерархию всех вершинПредставляет иерархию всех вершин

• Используется на каждом кадре для обновленияИспользуется на каждом кадре для обновления

Список активных треугольниковСписок активных треугольников• Представляет текущее упрощениеПредставляет текущее упрощение

• Содержит список треугольников для рисованияСодержит список треугольников для рисования

• Треугольники добавляются или удаляется в Треугольники добавляются или удаляется в результате операций с деревом вершин.результате операций с деревом вершин.

Page 26: Введение в методы переменного уровня детализации полигональных сеток

Дерево вершин

С каждым узлом дерева С каждым узлом дерева ассоциированоассоциировано подмножество подмножество вершин моделивершин модели

• С каждым листовые узлом ассоциирована С каждым листовые узлом ассоциирована вершина из оригинальной моделивершина из оригинальной модели

• С каждым промежуточным узлом С каждым промежуточным узлом ассоциировано множество вершин, ассоциировано множество вершин, ассоциированных с каждым из его потомков.ассоциированных с каждым из его потомков.

Каждому узлу также присваивается Каждому узлу также присваивается представляющая его вершина, или представляющая его вершина, или заместитель (заместитель (proxy)proxy)

С каждым узлом дерева С каждым узлом дерева ассоциированоассоциировано подмножество подмножество вершин моделивершин модели

• С каждым листовые узлом ассоциирована С каждым листовые узлом ассоциирована вершина из оригинальной моделивершина из оригинальной модели

• С каждым промежуточным узлом С каждым промежуточным узлом ассоциировано множество вершин, ассоциировано множество вершин, ассоциированных с каждым из его потомков.ассоциированных с каждым из его потомков.

Каждому узлу также присваивается Каждому узлу также присваивается представляющая его вершина, или представляющая его вершина, или заместитель (заместитель (proxy)proxy)

Page 27: Введение в методы переменного уровня детализации полигональных сеток

Дерево вершин: сворачивание и разворачивание

• Сворачивание узла дерева заменяет ассоциированные с Сворачивание узла дерева заменяет ассоциированные с ним вершины на вершину-заместительним вершины на вершину-заместитель

• Разворачивание узла заменяет заместитель на Разворачивание узла заменяет заместитель на ассоциированные вершиныассоциированные вершины

• Сворачивание узла дерева заменяет ассоциированные с Сворачивание узла дерева заменяет ассоциированные с ним вершины на вершину-заместительним вершины на вершину-заместитель

• Разворачивание узла заменяет заместитель на Разворачивание узла заменяет заместитель на ассоциированные вершиныассоциированные вершины

Page 28: Введение в методы переменного уровня детализации полигональных сеток

Дерево вершин: пример

Page 29: Введение в методы переменного уровня детализации полигональных сеток

Дерево вершин: пример

Page 30: Введение в методы переменного уровня детализации полигональных сеток

Дерево вершин:пример

Page 31: Введение в методы переменного уровня детализации полигональных сеток

Дерево вершин: livetris и subtris

2 категории треугольников2 категории треугольников2 категории треугольников2 категории треугольников

Page 32: Введение в методы переменного уровня детализации полигональных сеток

Дерево вершин: livetris и subtris

Ключевое наблюдение:Ключевое наблюдение:

• Для каждого узла дерева Для каждого узла дерева subtris subtris может быть вычислено может быть вычислено заранеезаранее

• Для каждого узла дереваДля каждого узла дерева livetris livetris можно поддерживать в можно поддерживать в реальном времени.реальном времени.

Ключевое наблюдение:Ключевое наблюдение:

• Для каждого узла дерева Для каждого узла дерева subtris subtris может быть вычислено может быть вычислено заранеезаранее

• Для каждого узла дереваДля каждого узла дерева livetris livetris можно поддерживать в можно поддерживать в реальном времени.реальном времени.

Page 33: Введение в методы переменного уровня детализации полигональных сеток

Видозависимое упрощение

Может быть использован любой интерактивный Может быть использован любой интерактивный критерий сворачивания узла.критерий сворачивания узла.

Примеры видозависимых критериев упрощенияПримеры видозависимых критериев упрощения• Размер в экранных координатахРазмер в экранных координатах

• Сохранение силуэтаСохранение силуэта

• Поддержание фиксированного суммарного числа треугольников Поддержание фиксированного суммарного числа треугольников (бюджет треугольников)(бюджет треугольников)

• Критерии, основанные на человеческом восприятии изображенияКритерии, основанные на человеческом восприятии изображения

• Временные критерииВременные критерии

Может быть использован любой интерактивный Может быть использован любой интерактивный критерий сворачивания узла.критерий сворачивания узла.

Примеры видозависимых критериев упрощенияПримеры видозависимых критериев упрощения• Размер в экранных координатахРазмер в экранных координатах

• Сохранение силуэтаСохранение силуэта

• Поддержание фиксированного суммарного числа треугольников Поддержание фиксированного суммарного числа треугольников (бюджет треугольников)(бюджет треугольников)

• Критерии, основанные на человеческом восприятии изображенияКритерии, основанные на человеческом восприятии изображения

• Временные критерииВременные критерии

Page 34: Введение в методы переменного уровня детализации полигональных сеток

Оптимизация

Методы оптимизацииМетоды оптимизации

• Асинхронное упрощение сеткиАсинхронное упрощение сетки

– Распараллеливание алгоритмаРаспараллеливание алгоритма

• Использование пространственной связностиИспользование пространственной связности

– За малый промежуток времени сцена меняется малоЗа малый промежуток времени сцена меняется мало

• Поддержание связанной геометрии в памятиПоддержание связанной геометрии в памяти

– Оптимизация для аппаратных ускорителейОптимизация для аппаратных ускорителей

Методы оптимизацииМетоды оптимизации

• Асинхронное упрощение сеткиАсинхронное упрощение сетки

– Распараллеливание алгоритмаРаспараллеливание алгоритма

• Использование пространственной связностиИспользование пространственной связности

– За малый промежуток времени сцена меняется малоЗа малый промежуток времени сцена меняется мало

• Поддержание связанной геометрии в памятиПоддержание связанной геометрии в памяти

– Оптимизация для аппаратных ускорителейОптимизация для аппаратных ускорителей

Page 35: Введение в методы переменного уровня детализации полигональных сеток

Проблема: перехлестывание сетки

Page 36: Введение в методы переменного уровня детализации полигональных сеток

Проблема: искажение сетки (mesh foldovers)

Page 37: Введение в методы переменного уровня детализации полигональных сеток

Проблема: искажение сетки (mesh foldovers)

Page 38: Введение в методы переменного уровня детализации полигональных сеток

Видозависимый LOD vs. Статического LOD

Видозависимый Видозависимый LOD LOD предпочтительнее, предпочтительнее, когдакогда

• Модели содержат большое число небольших объектов Модели содержат большое число небольших объектов (напр. ландшафт)(напр. ландшафт)

• Упрощение должно выполняться автоматически (напр. Упрощение должно выполняться автоматически (напр. CAD)CAD)

• Необходима гибкая система видозависимых критериев Необходима гибкая система видозависимых критериев упрощения сеткиупрощения сетки

Видозависимый Видозависимый LOD LOD предпочтительнее, предпочтительнее, когдакогда

• Модели содержат большое число небольших объектов Модели содержат большое число небольших объектов (напр. ландшафт)(напр. ландшафт)

• Упрощение должно выполняться автоматически (напр. Упрощение должно выполняться автоматически (напр. CAD)CAD)

• Необходима гибкая система видозависимых критериев Необходима гибкая система видозависимых критериев упрощения сеткиупрощения сетки

Page 39: Введение в методы переменного уровня детализации полигональных сеток

Видозависимый LOD vs. Статического LOD

Статический Статический LOD LOD является лучшим является лучшим выбором, так как обладает свойствамивыбором, так как обладает свойствами

• Простая для реализации модельПростая для реализации модель

• Малая загрузка Малая загрузка CPUCPU

• Проще использовать аппаратуруПроще использовать аппаратуру

Статический Статический LOD LOD является лучшим является лучшим выбором, так как обладает свойствамивыбором, так как обладает свойствами

• Простая для реализации модельПростая для реализации модель

• Малая загрузка Малая загрузка CPUCPU

• Проще использовать аппаратуруПроще использовать аппаратуру

Page 40: Введение в методы переменного уровня детализации полигональных сеток

Видозависимый LOD vs. Статического LOD

Приложения, которые используютПриложения, которые используют• Статический Статический LODLOD

– ВидеоигрыВидеоигры

– СимуляторыСимуляторы

• Видозависимый Видозависимый LODLOD

– Инструменты Инструменты CADCAD

– Научные и медицинские приложенияНаучные и медицинские приложения

– Виртуальные музеиВиртуальные музеи

Приложения, которые используютПриложения, которые используют• Статический Статический LODLOD

– ВидеоигрыВидеоигры

– СимуляторыСимуляторы

• Видозависимый Видозависимый LODLOD

– Инструменты Инструменты CADCAD

– Научные и медицинские приложенияНаучные и медицинские приложения

– Виртуальные музеиВиртуальные музеи

Page 41: Введение в методы переменного уровня детализации полигональных сеток

Вопросы?