LOD: Sphere hierarchy & splatting

Начало: 30 апреля 2002 года
Конец: 13 мая 2002 года (23:59)
Автор задания: Алексей Игнатенко

Цель задания

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

Описание задания

В задании предлагается реализовать следующую функциональность:

* загрузка полигональной модели из VRML файла

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

* создание на ее основе иерархического представления в виде дерева сфер, аналогичному описанному в [1].

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

* многомасштабная визуализация иерархии с учетом уровня детализации (LOD) с использованием OpenGL.

Минимальным требованем является возможность ручной установки уровня детализации модели. Желательно сделать контроль над частотой смены кадров (frame rate), т.е. чтобы частота задавалась пользователем, а различия в сложности моделей сказывались только на качестве визуализации, т.е. в этом случае LOD должен контролироваться автоматически.

Нефункциональные требования

Скорость работы

Скорость работы будет измеряться. Очень приветствуются различные техники оптимизации: дискретизация, таблицы препроцессинга и т.д. Можно переписать внутренние циклы на ассемблере.

Интерфейс

Как минимум должна быть реализована загрузка файлов из командной строки, например, так: "yourprog.exe scene.wrl". Также обязательна реализация интерактивного вращения объекта. Для этого можно и рекомендуется использовать модуль trackball. Можно реализовать изменение масштаба.

Разрешается использовать как GLUT так и работать с Win32 (MFC и т.д.)

Развитый интерфейс приветствуется.

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

Литература

Для изучения темы нужно обратиться к следующим статьям:

[1] Levoy, M., Rusinkiewicz, S. "QSplat: A Multiresolution Point Rendering system for Large Meshes" Proc. SIGGRAPH 2000.

[2] Luebke, D., Hallen, B. Perceptually Driven Interactive Rendering, University of Virginia Tech Report #CS-2001-01

[3] Пособие по VRML.

 

Оформление задания

Правила обычные: zip-архив, содержащий исходные тексты и исполняемый файл. В архиве обязательно должен присутствовать текстовый (не doc и не html!) файл readme.txt точно следующего вида (замените текст в квадратных скобках на реальные данные):
 
Спецкурс "Доп. главы машинной графики", 2001
5-ое задание: LOD / Sphere hierarchy & splatting
  
  [Фамилия] [Имя] [Отчество]

Среда:
  Hardware: [напр. P4-1200 512M GeForce3]
  OS: [Win95 / Win98 / WinNT4  / Win2000 SP1 / WinXP / ?]
  Среда прогр.: [CBuilder / VS 6.0 / ?]

Комментарии по реализации:
  [комментарии, что было сделано, какие возникали трудности]
 

Оценки

Оценки будут выставлены исходя из среднего уровня и количества сделанных работ.

Результаты работы

Работа высылается по адресу ignatenko@graphics.cs.msu.su

Вопросы по заданию и/или по OpenGL можно задать Алексею Игнатенко по электронной почте (ignatenko@graphics.cs.msu.su) или лично в лаборатории (703,77)