ФизМатШкола № 30
 

ФизМатШкола № 30
ГРУППА КОМПЬЮТЕРНОЙ ГРАФИКИ
ФИЗИКО-МАТЕМАТИЧЕСКОГО ЛИЦЕЯ № 30

Computer Graphics Support Group
of 30 Phys-Math Lyceum

Tough Modeling System

Авторы:
1.Бурков ДенисBurkov Denis11-1 класс
2.Марчукова ТатьянаMarchukova Tatjana11-3 класс
3.Николаенко ВалерияNikolaenko Valerija11-3 класс
4.Тимофеев АнтонTimofeev Anton10-1 класс

Научный руководитель проекта: Галинский Виталий Александрович

Samples Presentation

Введение и постановка задачи

Данная работа посвящена реализации системы синтезирования трехмерных сцен в реальном времени. Разработанная система геометрического моделирования позволяет путем контекстной иерархической схемы описания и модифицирования геометрических данных создать реалистичную геометрическую сцену, где для каждой единицы анимации геометрия представляет собой ветвь общего дерева. Каждый уровень хранит независимые данные об аффинных преобразованиях собственной системы координат и системы координат относительно "родительского" уровня. Для оптимизации представления полигональных данных элементы делятся на индексированные треугольники, веера, полосы и регулярные сетки. В проекте реализован импорт геометрических сцен из сторонних систем геометрического моделирования. При создании системы моделирования была реализована библиотека линейной алгебры. Вся система основана на объектно-ориентированном подходе, что позволяет .

Визуализация 3D сцен

Система визуализации основана на совмещении внутреннего представления геометрических данных с возможностями низкоуровнего вывода 3D примитивов с использованием интерфейсов Microsoft Direct3D 9.0. В системе базовым объектом описания геометрии является "примитив", в описание которого входят, помимо геометрических данных, свойства поверхности такие, как цвет и текстура. Для повышения производительности системы результаты освещения объектов сохраняются в цветах вершин его примитивов, детализация осуществляется посредством использования мультитекстурирования (базовый примитив имеет два уровня текстур), что позволяет совмещать динамическое освещение, цветовые детали поверхности и дополнительные оптические эффекты. Система визуализации абстрагирована от моделирования и анимации, что позволяет осуществлять независимое проектирование всей системы, без привязки к низкому уровню. Спроектированный функциональный интерфейс позволяет системе корректно синтезировать отображаемые данные. Для вывода вспомогательной информации разработана система консолей - плоских объектов прямоугольной формы, выводимых в плоскости проекции камеры.

Система анимации на основе физического моделирования

Анимация используется для построения динамических процессов на основе физического моделирования. Система основана на процедурной анимации, включающую в себя: межкадровую синхронизацию по времени (используется таймер высокого разрешения, обеспечиваемый средствами Win API), разбиение объектов сцены на "единицы анимации" (которые имеют методы построения и реагирования на временные интервалы, а также геометрическое описание). В системе разработана система частиц, позволяющая промоделировать многие природные эффекты, которая базируется на выводе множества текстурированных прямоугольников с заданным уровнем прозрачности в плоскости проекции камеры. Моделирование физики основано на разработанной системе представления объектов в виде совокупности точечных узлов, связанных между собой жесткими и "релаксированными" ограничениями, при этом законы физики применяются к отдельным узлам, которые взаимодействуют с другими благодаря ограничивающим связям. Для каждого типа объекта реализуется своя схема поведения. Для правильного определения столкновений в процессе работы разработана и реализована система "collision detection" на базе "воксельного" представления пространства и реализации функций поиска пересечений его с простыми объектами.

Заключение

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

Литература

  • Alan Watt, Mark Watt. "Advanced Animation and Rendering Techniques. Theory and Practice". ACM Press, Addison-Wesley Longman Limited, 1992.
  • David S. Ebert (ed.), F. Kenton Musgrave, Darwyn Peachey, Ken Perlin, Steven Worley. "Texturing and Modeling. A Procedural Approach". AP Professional, Academic Press, 1994.
  • Tomas Akenine-Moller, Eric Haines. "Real-Time Rendering". 2nd ed., A K Peters, Natick, Massachusetts, 2002.
  • Alan Watt, Fabio Policarpo. "3D Games. Real-time Rendering and Software Technology. Volume One". ACM Press, Addison-Wesley, New York, 2001.
  • Е.В.Шикин, А.В.Боресков. "Компьютерная графика. Полигональные модели". М.: Диалог-МИФИ, 2000
  • Frank D. Luna. "Introduction to 3D Game Programming with DirectX 9.0". Wordware Publishing, Inc., 2003
  • David M. Bourg. "Physics for Game Developers". O'REILLY, 2002.
  • Пэрент. "Компьютерная анимация". М: Кудиц-Образ, 2004.
ФМЛ № 30
 
Сайт Физико-математического лицея № 30, Санкт-Петербург, Россия