автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.16, диссертация на тему:Методы и алгоритмы компьютерной графики для моделирования природных явлений и объектов в системах виртуальной реальности

кандидата технических наук
Григорьев, Андрей Борисович
город
Санкт-Петербург
год
2000
специальность ВАК РФ
05.13.16
Диссертация по информатике, вычислительной технике и управлению на тему «Методы и алгоритмы компьютерной графики для моделирования природных явлений и объектов в системах виртуальной реальности»

Автореферат диссертации по теме "Методы и алгоритмы компьютерной графики для моделирования природных явлений и объектов в системах виртуальной реальности"

На правах рукописи

рге од

ГРИГОРЬЕВ Андрей Борисович

МЕТОДЫ И АЛГОРИТМЫ КОМПЬЮТЕРНОЙ ГРАФИКИ ДЛЯ МОДЕЛИРОВАНИЯ ПРИРОДНЫХ ЯВЛЕНИЙ И ОБЪЕКТОВ В СИСТЕМАХ ВИРТУАЛЬНОЙ РЕАЛЬНОСТИ

Специальность 05.13.16- применение вычислительной техники, математического моделирований математических методов в научных исследованиях

Автореферат диссертации на соискание ученой степени кандидата технических наук

Санкт-Петербург 2000

Работа выполнена в Санкт-Петербургском государственном техническом университете.

Научный руководитель:

кандидат технических наук, доцент

И. В. Штурц

Официальные оппоненты:

доктор технических наук, профессор

кандидат физико-математических наук, старший научный сотрудник

В. В. Александров

Ф. А. Новиков

Ведущая организация:

Санкт-Петербургский государственный университет

Защита состоится «_2_» 2000 года в /#<%асов на заседании диссертационного

совета Д 063.38.18 в Санкт-Петебургском государственном техническом университете по адресу 195251, Санкт-Петербург, Политехническая ул., 29, корпус _-/_, аудитория ^

С диссертацией можно ознакомиться в библиотеке Санкт-Петербургского государственного технического университета.

Афтореферат разослан «_ 2С .» 2000 г.

Ученый секретарь

диссертационного Совета Д 063.38.18 доктор биологических наук

А. В. Зинковский

о£>х?го е /<р/г0

1. ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

Актуальность темы. Проблема моделирования природных явлений и объектов является одной из наиболее сложных в компьютерной графике реального времени. Такие задачи характерны для сравнительно нового и быстро развивающегося класса трехмерных графических приложений для персональных компьютеров, которые принято называть системами виртуальной реальности.

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

Действительно, высокая частота кадров не оставляет времени для точных расчетов. Например, для создания иллюзии плавного движения в транспортных тренажерах требуемая частота вывода изображения на экран составляет 30 кадров в секунду и выше. Очевидно, что за сотые доли секунды невозможно рассчитать динамику и оптические свойства сложных объектов, используя достаточно точные физические модели и вычислительные методы, даже на новейших мощных персональных компьютерах. Поэтому в трехмерной компьютерной графике реального времени часто применяются алгоритмы, основанные на моделях, которые являются грубым приближением моделируемого физического явления. Тем не менее, они позволяют получить требуемое субъективное качество визуализации.

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

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

Цель работы. Разработка общих методов моделирования природных явлений и объектов для приложений компьютерной графики, работающих в реальном времени. Решение ряда практических задач, возникающих при разработке различного рода тренажеров и компьютерных игр.

Научная новизна. В работе дана классификация нечетких объектов с точки зрения их визуализации. Разработаны методы моделирования дискретных и непрерывных нечетких объектов. Предложенные методы покрывают все тожество нечетких явлений и объектов, представленных в классификации.

Практическая значимость исследования. Результатами работы являются алгоритмы в программная реализация разработанных методов. Их практическая значимость подтверждается использованием в ряде приложений, работающих в реальном времени:

• в авиационном тренажере, установленном в Санкт-Петербургском аэропорту Пулково и в вертолетном тренажере Сыктывкарского аэропорта;

• в судовом тренажере Таллинского морского порта;

• в нескольких играх для персонального компьютера

Апробация работы. Реультаты работы были доложены на научных конференциях «Nondestructive Testing and Computer Simulations in Science aiidJEngineeringJ'St.Petersburg)>>H3-199774998-H-1999-годах; на межвузовских научно-технических конференциях «Неделя науки СПбГТУ» в 1995,1996, 1998 и 1999 годах; на Всероссийском научном молодежном Форуме «Интеллектуальный потенциал России - в XXI век» в 1995 году и на семинаре кафедры "Прикладная математика" под руководством д.ф.-м.н. JIB. Петухова в СПбГТУ. Публикации. По теме диссертации опубликовано 9 работ.

Объем и структура диссертации. Диссертация состоит из введения, четырех разделов, разбитых на подразделы, и заключения. Объем диссертации - 126 страниц MS Word 97. Работа иллюстрирована 26 рисунками. Список литературы содержит 59 наименований.

%. КРАТКОЕ СОДЕРЖАНИЕ РАБОТЫ Во введении дается обоснование выбора темы, перечисляются результаты, которые выносятся на защиту, а также кратко описывается структура диссертации.

В первом разделе рассмотрены основные отличительные черты и приведена подробная классификация нечетких природных явлений и объектов.

Нечеткие объекты разделяются следующим образом :

• По составу физической среды

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

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

• По занимаемому объему в сцене

- Занимающие ограниченный объем - пена, облака.

- Занимающие весь видимый объем - туман, дождь, снег.

• По внутренней структуре

Неоднородые - клочковатый туман, взрывы.

- Однородные - дождь, снег.

• По скорости физических процессов

Статические (неподвижные или медленно изменяющиеся) - туман, облака.

- Динамические - объекты, форма которых непрерывно меняется под действием внешних или внутренних сил - дождь и снег в ветренную погоду, водная пена, взрыв.

Понятно, что приведенная выше классификация условна. Но для наших целей она является достаточно полной и позволяет описать практически все природные объекты и явления, относящиеся к классу нечетких объектов.

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

Второй раздел посвящен решению задач моделирования дискретных нечетких явлений и объектов.

В первом подразделе рассмотрены основные особенности моделирования представителей этого класса.

Второй подраздел посвящен моделированию дискретных нечетких объектов, занимающих ограниченный объем. Для решения таких задач предложен метод анимации базовых точек.

Для дискретных объектов характерным является наличие в их составе частиц, видимых

невооруженным глазом. Поэтому для визуализации таких объектов можно использовать модели в основе которых лежат системы частиц. С их помощью можно получить вполне приемлемое качество визуализации, однако для этого требуется очень большое число частиц - порядкг нескольких десятков тысяч. Это приводит к существенному снижению скорости работы соответствующих алгоритмов, что затрудняет их использование в системах реального времени.

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

Поскольку большинство дискретных нечетких объектов достаточно однородно по своему составу, то замена на этапе визуализации одной частицы на несколько практически не скажется не качестве изображения. Используя это обстоятельство, с помощью медленного алгоритма формируется сравнительно небольшое количество частиц, каждая из которых затем будет использоваться при выводе как центр связанного с ней множества текстурированных полигонов. Такие частицы в дальнейшем будем называть базовыми точками. Множество базовых точек для всей системы образует один хадр анимации базовых точек.

Таким образом, на вход основного алгоритма поступает множество кадров анимации базовых точек. На этапе визуализации эти кадры выводятся последовательно. Такой подход является достаточно общим и может быть использован для моделирования большинства дискретных нечетких явлений и объектов. В дальнейшем будем называть этот метод - методом анимации базовых точек.

Для решения задачи моделирования какого-то нечеткого дискретного объекта с помощью этого

метода необходимо сделать следующее:

• разработать модель явления с использованием системы частиц,

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

• сформулировать правила, определяющие анимацию базовых точек,

• написать алгоритм вывода полученной системы на экран.

В третьем подразделе показано использование этого метода для решения задачи визуализации пены, возникающей в кормовой части судна. В качестве модели облака пень: выбрана система частиц, состоящая из трех независимых подсистем (рис. 1а). Порождение частицы происходит в системе координат, связанной с судном (рис. 16), а уже непосредственно перег выводом на экран частица переносится в систему координат, связанную с выводимой сценой.

Судно

Вторая система

Третья система

Пешая система

(а)

о (б)

Рис.1: Система частиц в модели пены.

Определим начальную позицию частицы следующим образом:

Pos; = Rnd. * Sizef, (i =x, y, z). Где Rnd, e[-l, l]- случайные величины, ft'ze, - характерный размер области порождения. Начальную скорость частицы во второй и третьей подсистемах будем вычислять по формулам: V: = Rnd, *Lt *V{ тк, i = x,y,z,

{Right-At, дли правой системы _ -

- Right- At, для левой системы

Здесь F.™"- проекция максимально возможной скорости частицы на соответствующую ось,

Rnd, е [О, l]- случайные величины, At- вектор, лежащий в плоскости XZ и совпадающий с

направлением движения судна, Right - вектор в плоскости XZ, перпендикулярный вектору At. Для частиц первой подсистемы используем аналогичную формулу при условии, что Rndz s [-1, l]. Положение частицы определим формулой:

R = Pos + К * Г + -

2 *т

-*Т .

Здесь R - радиус-вектор частицы, Pos- ее начальная позиция, Т - время жизни частицы, m - ее масса, G - вектор силы тяжести.

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

Для каждой из подсистем в модели облака пены сохраняется свое множество базовых точек.

Их объединение для всех трех подсистем определяет один кадр анимации пены. Множества кадров анимации пены поступает на вход основного алгоритма. На этапе визуализации эти кадрь последовательно выводятся. Такой подход позволяет получить вполне приемлемое качестве визуализации без существенных потерь по скорости вывода (при наличии в сцене 4 движущих« катеров визуализация пены занимает не более 2% времени вывода кадра на машине Pentium II333 Мгц для средней частоты вывода 30 кадров в секунду), что позволяет использовать его t приложениях, работающих в реальном времени.

В четвертом подразделе метод анимации базовых точек применяется для решения задачи моделирования пены вблизи водопадов.

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

В шестом подразделе рассмотрено использование метода анимации базовых точек для визуализации погодных явлений - дождя и снега. При этом для определения множества базовых точек разработан подход, основанный на использовании пространственной вексельной решетки.

Третий раздел посвящен моделированию непрерывных нечетких явлений и объектов.

В первом подразделе рассмотрены основные особенности моделирования представителей этого класса. Общим свойством всех непрерывных нечетких объектов явлется невозможность их представления в виде совокупности отдельных частиц. Поэтому для их моделирования нельзя использовать разработанный в предыдущем разделе метод анимации базовых точек.

Для решения задачи визуализации непрерывных нечетких объектов занимающих ограниченный объем предложен метод анимации карты прозрачности, который рассмотрен во втором подразделе.

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

В качестве основы для модели (рис.2) выбирается текстурированный круглый спрайт -множество полигонов, лежащих в одной плоскости и ориентированных перпендикулярно направлению обзора камеры.

Рис.2: Модель непрерывного нечеткого объекта.

Для моделирования прозрачности в модель добавляется так называемая карта прозрачности -текстура, интенсивность которой используется для расчета прозрачности базовой текстуры. Заметим, что практически все изменения формы и плотности большинства непрерывных нечетких объектов, занимающих ограниченный объем в пространстве, могут быть в конечном счете сведены к изменению их прозрачности. Таким образом будем изменять лишь карту прозрачности, оставляя неподвижной основную текстуру.

На основе введенной модели можно сформулировать алгоритм, позволяющий получить приемлемое качество визуализации. Единственным его недостатком является крайне ограниченная возможность изменения внешнего вида объекта, например, при движении под действием ветра или постепенного рассеивания. Наиболее приемлемым решением этой проблемы является использование в качестве карты прозрачности процедурной текстуры.

В работе предложено два метода генерации процедурной карты прозрачности. Один из них основан на использовании спектрального синтеза, а второй - на так называемых сглаженных частицах [1].

С учетом этих дополнений описанный подход (в дальнейшем будем называть его методом анимации карты прозрачности) является достаточно общим и может быть использован для моделирования практически всех представителей класса непрерывных нечетких явлений и объектов, занимающих ограниченный объем в пространстве.

Для решения задачи моделирования подобных объектов с помощью данного метода необходимо сделать следующее:

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

• сформулировать правила анимации карты прозрачности;

• определить размеры карты прозрачности и исходной текстуры;

• написать алгоритм вывода полученной системы на экран.

В третьем подразделе описан упомянутый выше спектральный подход к генерации процедурной карты прозрачности. С этой целью используется функция турбулентности Перлина [2]:

о ^

=х*2', у, - у* Т

Здесь (х, у) - точка в текстурном пространстве, Noise(x,y) - шумовая функция, Size - размер точки в текстурном пространстве, [ ] - целая часть числа.

В качестве шумовой функции предложена модификация числовой шумовой функции N(i,j)=Tablev[lnd(i,j% Ind{i, j) = i + Tabled \j mod TableSize]. Здесь i, j - целочисленные значения координат в текстурном пространстве, Tabled - таблица для дискретной шумовой функции [2], Table„- таблица псевдослучайных величин в диапазоне [-1, 1], N(i,j)~ дискретная числовая функция. Введение данной шумовой функции позволило уменьшить вычислительную сложность в 1.5 раза по сравнению с алгоритмом, описанным в [2]. Для вычисления значений этой функции в произвольной точке текстурного пространства используется линейная интерполяция в силу ее малой вычислительной сложности.

В четвертом подразделе для построения процедурной карты прозрачности предложен метод, основанный на использовании так называемых сглаженных частиц, введенных в [1]. В заданной области они создают поле плотности pt (г), вычисляемое по формуле

У-1

где N -количество частиц, ту- масса }-й частицы, г. - радиус-вектор, определяющий ее положение, 1у(г-г)у к)- сглаживающее ядро, связанное с ] -й частицей и зависящее отпараметра А.

При построении процедурной карты прозрачности поле плотности, вычисляемое по данной формуле, отображается на множество значений прозрачности. Если параметр к будет зависеть от времени, то его можно использовать для динамического изменения внешнего вида моделируемого объекта через изменение плотности. Например, в задаче о моделировании тумана в качестве сглаживающего ядра выбиралось решение уравнения диффузии

( 1 V / с?-?,)"

У

Параметр А здесь вычисляется по формуле А (?) -^¡к^, где кд - коэффициент диффузии.

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

Четвертый раздел посвящен решению сложной задачи моделирования сферически-симметричных взрывов, занимающих ограниченный объем в пространстве. Для ее решения необходимо использовать оба разработанных в диссертации метода - как метод анимации базовых точек, так и метод анимации карты прозрачности.

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

С некоторой долей условности можно считать, что непрерывные и дискретные составляющие в модели взрыва не взаимодействуют между собой. Учитывая это, рассмотрим модель взрыва, состоящую из двух независимых моделей (рис.3), - дискретной модели, отвечающей за моделирование разлетающихся твердых частиц и непрерывной модели, описывающей поведение газа, возникающего при взрыве.

Для создания дискретной модели используется метод анимации базовых точек. При этом вводится система частиц, описанная в [3].

Рис.3: Структура модели взрыва

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

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

быть основано на решении таких уравнений, так как оно достаточно сложно. Уменьшить сложность можно, перейдя к модели гидродинамики сглаженных частиц [1].

В третьем подразделе показано преобразование уравнений газовой динамики в рамках модели сглаженных частиц. В итоге получается следующая система уравнений (/ = 1,2,...., У).

& = О)

т

йУ, Л

а л-;

£ = (3)

7-1 Р)

р^Кт^Т^г-?), (4)

>1

т'=е'Г~Т' (5)

(6)

Здесь гп V,, еп Т1 - соответственно радиус-вектор, вектор скорости, внутренняя энергия и температура i -й частицы; , р{ - значения полей плотности и давления, создаваемых частицами в точках г - Ц; т - масса отдельной частицы; Я- универсальная газовая постоянная; у -—отношение-удельных^геплоемкостей-причгюстоянном-давлении и-постоянном-объеме,-Гк(/р—г/}^-сглаживающее ядро, связанное с положением j -й частицы и вычисляемое в месте нахождения / -й частицы.

Уравнения (2), (3) допускают первый интеграл

V?

N (

Е

* )

1 2

= £, (?)

выражающий закон сохранения энергии в системе. Здесь Е - постоянная, складывающаяся из энергии, выделяющейся в момент взрыва, и энергии, которой обладают частицы до взрыва.

Монаган использовал уравнения (1) - (б) для решения задач астрофизики и физики плазмы [1]. При этом было показано что данная модель дает вполне приемлемые реультаты, если число частиц достаточно велико.

Переход к модели сглаженных частиц позволяет уменьшить вычислительную сложность задачи. Одно из уравнений в частных производных при этом удовлетворяется автоматически (уравнение неразрывности), а остальные трансформируются в системы обыкновенных

дифференциальных уравнений, решение которых значительно проще.

В четвертом подразделе рассмотрено численное решение системы уравнений (1) - (6).

Сферическая симметрия взрыва позволяет ограничиться решением одномерной задачи о распространении частиц вдоль двух лучей, выходящих из точки взрыва в противоположных направлениях. Перепишем дифференциальные уравнения (1) - (3) с учетом пространственной симметрии взрыва

¿п

¿1

1 =

с!У1 Л

¿е.

—I

1=1

Ел-^Ех. р) р1

¿г

Л йг

(8)

(9)

(10)

Здесь для краткости записи введено обозначение

Ь-ч).

аг ¿г "

При составлении алгоритма для решения этих уравнений за основу был взят метод Эйлера. Такой выбор обусловлен в первую очередь сравнительно невысокой вычислительной сложностью данного метода.

Обозначим с помощью верхнего индекса п значения используемых функций в момент времени г„ = пт (п=ОД,...). Запишем выражения для вычисления значений г,"+у и У"+/ по обычному методу Эйлера

гг'=г;+тгг, 01)

V"

N

р] + р? --(_--

М {рЯ

±г

(12)

где ■

Г/

а,г

¿г

Ту ). Внутреннюю энергию предлагается вычислять по следующей формуле

¿г

(13)

где + У")/2. Заметим, что при использовании обычной вычислительной формулы

метода Эйлера вместо следовало бы поставить У . Однако это привело бы к невыполнению при численных расчетах закона сохранения полной энергии частиц (7) и образованию фиктивных источников энергии. Построенный вычислительный алгоритм обеспечивает выполнение закона сохранения энергии в виде (7), что доказывается в пятом подразделе.

В шестом подразделе рассмотрены особенности визуализации описанной модели взрыва. На основе полученного одномерного решения формируется двумерное изображение взрыва. Предполагается, что центр взрыва находится в начале координат, а одномерное решение получено вдоль прямой, совпадающей с одной из осей координат. Имея ввиду сферическую симметрию взрыва, будем поворачивать эту прямую вокруг начала координат с некоторым достаточно малым шагом с последующим отображением на нее полученного решения. В итоге переходим к двумерной картине взрыва. Аналогичным образом можно рассмотреть и трехмерный случай.

Полученные данные будем использовать для создания карты прозрачности в методе анимации карты прозрачности. Выберем за основу для визуализации один из параметров системы сглаженных частиц, например, плотность. Используя формулу, аналогичную (6),

н

можно рассчитать значение плотности в любой точке текстурного пространства. В качестве сглаживающего ядра можно, например, выбрать функцию

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

Следует отметить, что вычислительная сложность известных на данный момент моделей визуализации взрывов лежит далеко за пределами возможностей новейших персональных компьютеров. Использование модели, предложенной в работе, позволяило не только визуализировать взрывы на персональных компьютерах, но и делать это в приложениях, работающих в реатьнои времени.

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

1. Предложена общая классификация нечетких природных явлений и объектов.

2. Для моделирования дискретных нечетких природных явлений и объектов разработан метод анимации базовых точек. Использование этого метода показано на примере решения ряда практических задач, таких как визуализация водной пены, возникающей в кормовой части судна; пены, возникающей вблизи водопадов; облака частиц, вылетающих из под колес движущегося

3. ОСНОВНЫЕ ВЫВОДЫ

автомобиля; снега и дождя.

3. Для моделирования непрерывных нечетких природных явлений и объектов предложен метод анимации карты прозрачности. Основные особенности его использования показаны на примере решения задачи визуализации клочковатого тумана.

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

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

6. Разработанные в работе методы анимации базовых точек и анимации карты прозрачности являются достаточно общими и могут быть использованы для моделирования большинства нечетких природных явлений и объектов. При этом затраты на визуализацию составлют не более 10 - 15 % от общего времени вывода сцены для типовой конфигурации современных персональных компьютеров. Таким образом высокая скорость алгоритмов, основанных на этих методах, делает возможным их использование в приложениях, работающих в реальном времени.

Список цитируемой литературы

1. Monaghan J.J. Why Particle Methods Work // SIAM Jomal of Scientific and Statistical Computing, Vol 3, December 1982. pp. 422-433.

2. Ebert D., Musgrave F., Peachey D., Perlin K., Worley S. Texturing & Modeling // AP Professional, 1998. pp. 7-81.

3. Foley J.D., van Dam A., Feiner S.K., Hughes J.F., Computer Graphics Principles and Practice //Addison-Wesley Publishing Company, 1996. pp. 1031-1034.

Список работ, опубликованных по теме диссертации

1. Григорьев А. Б. Уменьшение полигональной сложности трехмерных сцен в машинной графике // Научно-технич. конфер. студентов (в рамках 24-ой Недели науки СПбГТУ). Тезисы докладов. -СПб., 1995. С. 90-91.

2. Григорьев А. Б., Суетов А. Е. Машинная графика реального времени и математическое моделирование // Всероссийский научный молодежный Форум «Интеллектуальный потенциал России-в XXI век». Тезисы докладов. -СПб., 1995.-С. 58-59.

3. Григорьев А.Б., Беляев С.Ю., Суетов А.Ю., Шубников В.Г., Штурц И.В. Инструментальные

системы виртуальной реальности // Прикладная математика: Сб. научных трудов СПбГТУ. - СПб., 1996.-С. 146-150.

4. Григорьев А.Б., Суетов А.Е. Интерактивное редактирование текстур непосредственно на трехмерных объектах // Научно-технич. конфер. студентов (в рамках 25-ой Недели науки СПбГТУ). Тезисы докладов,-СПб., 1996.-С. 115.

5. Grigoriev А.В., Belyaev S.Yu. Case study fox natural phenomena visualization: water foam // Nondestructive Testing and Computer Simulations in Science and Engineering, June 1997. V. 3345, pp. 289-293.

6. Grigoriev A.B. Case study for natural phenomena visualization: weather effects // Nondestructive Testing and Computer Simulations in Science and Engineering, June 1998. V. 3687, pp. 224-228.

7. Григорьев А. Б., Беляев С. Ю. Моделирование отражений на поверхности воды в машинной графике реального времени // XXVII Неделя науки СПбГТУ. Ч. 3: Материалы межвузовской научной конференции.-СПб., 1999. -С. 50.

8. Grigoriev A.B. Case study for natural phenomena visualization: water foam and smoke. // Nondestructive Testing and Computer Simulations in Science and Engineering, June 1999. V. 4064, pp. 243-249.

9. Григорьев А. Б., Беляев С. Ю. Моделирование природных явлений и объектов в компьютерной графике реального времени: водная пена // Прикладная математика: Сб. научных трудов СПбГТУ. - СПб., 2000. - С. 42-46.

Оглавление автор диссертации — кандидата технических наук Григорьев, Андрей Борисович

1. ВВЕДЕНИЕ.

2. ОСНОВНЫЕ ПРИНЦИПЫ И ПОДХОДЫ К МОДЕЛИРОВАНИЮ ПРИРОДНЫХ ЯВЛЕНИЙ.

2.1 Реализм и реалистичность.

2.2 нечеткие природные явления и объекты.

2.3 Модели природных явлений.

2.4 Методы моделирования природных явлений.

3. МОДЕЛИРОВАНИЕ ДИСКРЕТНЫХ НЕЧЕТКИХ ОБЪЕКТОВ.

3.1 Особенности моделирования дискретных объектов.

3.2 Метод анимации базовых точек [51].

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

3.4 Использование метода базовых точек для визуализации пены от водопадов.

3.5 Использование метода анимации базовых точек для моделирования облака частиц, отлетающих от движущегося автомобиля [53], [54].

3.6 Использование метода базовых точек для решения задачи визуализации погодных явлений (снег и дождь) [52].!.

Введение 2000 год, диссертация по информатике, вычислительной технике и управлению, Григорьев, Андрей Борисович

Зарождение компьютерной графики тесно связано с появлением возможности вывода данных в графическом форме на экраны катодно-лучевых трубок. Долгое время это была достаточно узкая область в основном из-за сравнительной дороговизны соответствующей аппаратной базы и практически полного отсутствия программного обеспечения. Появление в начале 80-х годов первых персональных компьютеров со встроенными растерными дисплеями сопособствовало популяризации и повсеместному распространению, так называемой растерной графики. Приблизительно в то же время была сформулирована концепция графического интерфейса пользователя [42], позволившая существенно упростить процесс взаимодействия человека и компьютера. В результате на рынке появилось огромное количество легкодоступных и удобных в использовании программ. В настоящее время невозможно представить себе компьютерное приложение, ориентированное на взаимодействие с пользователем и не использующее при этом компьютерную графику.

Появление в конце 80-х годов первых графических станций произвело настоящий переворот в компьютерной графике и послужило толчком к возникновению так называемой научной визуализации [43]. Под этим можно понимать отображение данных, получаемых в процессе решения научно-технических задач, на экране компьютера. В настоящее время подобная визуализация является необходимой составной частью вычислительного эксперимента. Во многих случаях использование вычислительных экспериментов, позволяет существенно сэкономить средства, выделяемые на исследования. В качестве примера можно привести компьютерное моделирование ядерных взрывов.

Дальнейшее увеличение вычислительной мощности графических станций ознаменовало новый виток развития компьютерной графики. Оказалось, что с некоторой долей условности на экране компьютера можно попытаться отобразить окружающий нас мир, причем отобразить не в виде статического изображения, а в виде динамической системы, способной взаимодействовать с пользователем. Такие системы получили название систем виртуальной реальности [57]. В качестве примера можно привести различные тренажеры морские, авиационные, автомобильные; компьютерные игры и многие другие. Дальнейшее развитие систем виртуальной реальности сдерживалось практически полным отсутствием программной и алгоритмической базы для их создания и очень высокой стоимостью соответствующего оборудования. Устраниение отмеченных пробелов математического обеспечения послужило причиной возникновения целого направления компьютерной графики, получившего название компьютерной графики реального времени.

Экспоненциальный рост вычислительной мощности персональных компьютеров в середине 90-х годов, появление первых общедоступных графических ускорителей и значительные успехи в разработке программного обеспечения ознаменовали новый виток развития компьютерной графики. Ограничения, тормозившие развитие систем виртуальной реальности были либо вообще устранены, либо сведены к минимуму. В результате эти системы стали общедоступными и спрос на них существенно возрос. В немалой степени этому способствовал устойчивый спрос на создание компьютерных спецэффектов в фильмах и появление первых трехмерных компьютерных игр. Несмотря на свою явную развлекательную направленность, трехмерные компьютерные игры представляют собой полноценные и зачастую очень сложные приложения компьютерной графики и тоже могут быть отнесены к системам виртуальной реальности. Рост спроса на подобные приложения привел к бурному развитию компьютерной графики реального времени, который продолжается до настоящего времени.

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

Задача моделирования природных явлений и объектов является одной из наиболее сложных в компьютерной графике реального времени. Это связано с тем, что такие явления очень сложны, и, кроме того, мы постоянно наблюдаем их в реальной жизни. Последнее обстоятельство приводит к тому, что даже незначительное расхождение изображения на экране с сформировавшимися у нас образами может привести к потере эффекта присутствия. Отсюда возникают высокие требования к качеству изображения. Помимо этого от алгоритмов, используемых в системах реального времени требуется очень высокая скорость работы. Например, в морских тренажерах необходимо, чтобы скорость вывода всей сцены на экран была не ниже 30 кадров в секунду. Это вызвано тем, что в такого рода приложениях, как правило, моделируются реальные жизненные ситуации, которые сменяют друг друга за доли секунды.

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

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

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

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

Следует отметить, что существуют графические программы-моделлеры, такие как Softimage, Alias/Wavefront, дающие хорошие результаты в виде заранее просчитанных анимированных изображений природных явлений. Но методы, используемые в этих программах, не могут быть применимы для приложений, работающих в реальном времени, из-за высокой полигональной и временной сложности используемых алгоритмов. Это вызвано тем, что при моделировании и визуализации нечетких объектов приходится воспроизводить процесс во всем объеме, а не только на поверхности. Поэтому неизбежно увеличивается полигональная и временная сложность соответствующих алгоритмов.

Из сказанного ясно, что для моделирования нечетких природных явлений и объектов необходимо использовать какие-то другие подходы. Этому и посвящена настоящая работа. В ней предложены общие методы, которые не имеют аналогов, и могут быть использованы для моделирования природных явлений и объектов в компьютерной графике реального времени. Эффективность и целесообразность их использования в приложениях компьютерной графики реального времени показана на примере решения ряда конкретных практических задач.

Приведенный в работе алгоритм визуализации клочковатого тумана был использован в авиационном тренажере, установленном в Санкт-Петербургском аэропорту Пулково. Кроме того, одна из его модификаций нашла применение в вертолетном тренажере, разработанном по заказу Сыктывкарского аэропорта.

Решение задачи моделирования водной пены, возникающей в кормовой части движущегося судна, было использовано в судовом тренажере, созданном для Таллинского морского порта и в компьютерной игре "Jetboat SuperChamps". Алгоритм визуализации пены, возникающей вблизи водопадов, был задействован при разработке компьютерной игры "SpeedBoat Attack". Приведенные в работе алгоритмы визуализации грязи, отлетающей из под колес движущегося автомобиля использовались в компьютерной игре "Redline Racer". Решение задач моделирования снега и дождя было получено в ходе работы над игрой "SuperChix 76".

Реультаты работы были доложены на научных конференциях "Nondestructive Testing and Computer Simulations in Science and Engineering (St-Petersburg)" в 1997, 1998, 1999 и 2000 годах; на межвузовских научных конференциях "Неделя науки СПбГТУ" в 1998, 1999 годах.

По результатам проведенных исследований в открытой печати было опубликовано 7 статей.

Диссертационная работа состоит из 6 разделов. Первым разделом является настоящее введение. Во втором разделе проведен анализ наиболее часто применяемых в компьютерной графике реального времени подходов и принципов моделирования природных явлений и объектов. Более подробно по сравнению с другими описаны используемые в дальнейшем "системы частиц" и процедурные текстуры. Введена подробная классификация нечетких явлений и объектов.

Третий раздел посвящен моделированию дискретных нечетких объектов. В нем предложен метод анимации базовых точек. Этот метод является достаточно общим и может быть использован для моделирования практически всех нечетких явлений и объектов. В качестве примера в работе приведены решения ряда типовых задач, таких как визуализаця водной пены, возникающей в кормовой части судна, движущегося по поверхности воды (п.3.3); пены, возникающей вблизи водопадов (п.3.4); облака частиц, вылетающих из под колес движущегося автомобиля (п.3.5), а также снега и дождя (п.3.6).

В четвертом разделе рассмотрено решение задачи моделирования непрерывных нечетких явлений и объектов. Здесь предложен общий метод анимации карты прозрачности. В работе рассмотрено неколько модификаций этого метода, на примере решения задачи визуализации клочковатого тумана (п.4.2.4- 4.2.5)

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

В заключении проведен анализ результатов работы и сформулированы основные рекомендации по использованию метода анимации базовых точек и метода анимации карты прозрачности.

Заключение диссертация на тему "Методы и алгоритмы компьютерной графики для моделирования природных явлений и объектов в системах виртуальной реальности"

Основные результаты диссертационной работы могут быть сформулированы следующим образом:

1. Предложена общая классификация нечетких природных явлений и объектов.

2. Для моделирования дискретных нечетких природных явлений и объектов разработан метод анимации базовых точек. Использование этого метода показано на примере решения ряда практических задач, таких как визуализация водной пены, возникающей в кормовой части судна; пены, возникающей вблизи водопадов; облака частиц, вылетающих из под колес движущегося автомобиля; снега и дождя.

3. Для моделирования непрерывных нечетких природных явлений и объектов предложен метод анимации карты прозрачности. Основные особенности его использования показаны на примере решения задачи визуализации клочковатого тумана.

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

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

6. Разработанные в работе методы анимации базовых точек и анимации карты прозрачности являются достаточно общими и могут быть использованы для моделирования большинства нечетких природных явлений и объектов. При этом затраты на визуализацию составлют не более 10 - 15 % от общего времени вывода сцены для типовой конфигурации современных персональных компьютеров. Таким образом, высокая скорость алгоритмов, основанных на этих методах, делает возможным их использование в приложениях, работающих в реальном времени.

6. Заключение

Библиография Григорьев, Андрей Борисович, диссертация по теме Применение вычислительной техники, математического моделирования и математических методов в научных исследованиях (по отраслям наук)

1. D. W. Tompson, "On Groth and Form", Cambridge University Press, 1961.

2. P. de Reffye, C. Edelin, J. Francon, M. Jaeger and C. Puech, "Plant Models Faithfull to Botanical Structure and Development", Computer Graphics 22(4) pp. 151 158, August 1988.

3. G. Y. Gardner, "Simulation of Natural Scenes Using Textured quadric Surfaces", Computer Graphics 18(3) pp 161 170, 1986

4. G. Y. Gradner, "Visual Simulation of Clouds", Computer Graphics 19(3) pp. 297-303, July 1985.

5. В. B. Mandelbrot, "The Fractal Geometry of Nature", W.H.Freeman and Co., 1982

6. W. T. Reeves, "Particle Systems A Technique for Modelling a Class of Fuzzy Objects", Computer Graphics 17(3) pp. 359 - 376, July 1983.

7. W. T. Reeves and R. Balu, "Approximate and Probabilistic Algorithms for Shading and Rendering Structured Particle Systems", Computer Graphics 19(3) pp. 313-322, July 1985

8. D. Tonnesen, "Modeling Liquids and Solids Using Thermal Particles", Procedings of Grpahics Interface'91, pp 255 262, 1991.

9. R. Szeliski and D. Tonessen, "Surface Modeling with Oriented Particle Systems", Cambridge Research Lab, 1991

10. E. E. Catmull, "A Subdivision Algorithm for Computer Display of Curved Surfaces", PhD thesis, Department of Computer Science, University of Utah, December 1974.

11. J. F. Blinn, "Models of Light Reflection for Computer Synthesized pictures", In Computer Graphics (SIGGRAPH '77 Proceedings), 11(2), pp. 192 198 (July 1977)

12. J. F. Blinn, "Simulation of Wrinkled Surfaces", In Computer Graphics (SIGGRAPH '82 Proceedings), 16(3), pp. 21 29, July 1982.

13. K. Perlin, "An Image Synthesizer", In Computer Graphics (SIGGRAPH '85 Proceedings), 19(3), pp. 287 296, July 1985.

14. K. S. Fu and S. Y. Lu, "Computer Generation of Texture Using a Syntatic Approach", Computer Graphics (SIGGRAPH '78 Proceedings), 12(3), pp. 147 152, August 1978.

15. A. Fournier, D. Fussell and L. Carpenter, "Computer Rendering of Stochastic Models", Communications of ACM, 25(6), pp. 371 384, June 1982.

16. K. Sims, "Artificial Evolution for Computer Graphics", Computer Graphics (SIGGRAPH '91 Proceedings), 25(4), pp. 319 328, July 1991.

17. E. Rich, "Artificial intelligence", New York, McGraw Hill, 1983.

18. J. D. Foley, A. van Dam, S. K. Feiner, J. F. Hughes, "Computer Graphics Principles and Practice", Addison-Wesley Publishing Company, 1996.

19. D. Ebert, F. Musgrave, D. Peachey, K. Perlin, S. Worley, "Texturing & Modeling", AP Professional, 1998.

20. J. Stam, E. Fiume, "Depicting Fire and Other Gaseous Phenomena Using Diffusion Processes", Computer Graphics (SIGGRAPH'95 Proceedings), pp 129 — 136, 1995.

21. D. S. Ebert, R. E. Parent, "Rendering and Animation Gaseous Phenomena by Combining Fast Volume and Scanline A-Buffer Techniques", Computer Graphics (SIGGRAPH'90 Proceedings), 24(4) pp 357-366,1990.

22. C. H. Perry, R. W. Picard, "Synthesizing Flames and Their Spread", Computer Graphics (SIGGRAPH'94 Proceedings), July 1994.

23. G. Ward, "A Recursive Implementation of the Perlin Noice Function", Computer Graphics (SIGGRAPH'87 Proceedings), July 1987.

24. R. A. Gingold, J. J. Monaghan, "Smoothed particle hydrodinamics: Theory and application to non spherical stars", Mon. Not. Roy. Astr. Soc., 181, pp 375-389

25. J. J. Monaghan, "Why Particle Methods Work", SIAM Jornal of Scientific and Statistical Computing, Vol 3, December 1982.

26. F. Uhl, J. Blanc-Talon, "Rendering Explosions", ETCA/CREA/SP, 1998.

27. J. D. Foley, A.van Dam, S.K.Feiner, J.F.Hughes "Computer graphisc: principles and practice", Addison Wesley, 1996.

28. G. Miller, H. E. Rushmeier, M. F. Cohen, D. P. Greenberg and K. E. Torrance. "An Experimental Evaluation of Computer Graphics Imagery". ACM Transactions on Graphics, 5(1) pp 30 50, January 1986.

29. J. F. O'Brien, J. K. Hodgins "Dynamic Simulation of Splashing Fluids". Proceedings of Computer Animation '95, April 1995.

30. J. Stam "Multi-Scale Stochastic Modelling of Complex Natural Phenomena , PhD Thesis, Dept. of Computer Science, University of Toronto, 1995.

31. R. Booth "Inner loops : a source book for fast 32-bit software development", Addison-Wesley Developers Press, 1997.

32. D. K. Birdsall, D Fuss "Clouds-in-clouds, Clouds-in-cells, Physics for Many Body Plasma Simulation", J. Comp. Phys., 3, pp. 494 511, 1969.

33. L. Lucy "A Numerical Approach to Testing the Fission Hypothesis", Astron. J., 82, pp. 481 -499, 1977.

34. R.A. Gingold, J. J. Monaghan "Smoothed Particle Hydrodinamics : Theory and Application to non spherical stars", Mon. Not. Roy. Astr. Soc., 181, pp 375 389, 1977.

35. R. A. Gingold, J. J. Monaghan "Binary Fission in Damped Rotating Polytropes", Mon. Not. Roy. Astr. Soc., 184, pp 481 -499, 1978.

36. R.A. Gingold, J. J. Monaghan "Kernel Estimates as a Bassis for Particle Methods", J. Comp. Phys., 1982.

37. J. Stam "Stochastic Rendering of Density Fields", Dept. of Computer Science, Univeristy of Toronto, 1994.

38. W. Dungan "A Terrain and Cloud Computer Image Generation Model", Computer Graphics (SIGGRAPH'79 Proceedings), 13(2), pp 41 44, August 1979

39. A. Watt, M. Watt "Advanced Animation and Rendering Techniques : Theory and Practice" ACM Press, 1994.

40. R.C. Gonzalez, R.E.Woods "Digital Image Processing", Reading, Massachusetts: Addison Wesley 1992.

41. E. Haines "Essential Ray Tracing Algorithms". In A.Glassner, ed.,"An Introduction to Ray Tracing", Boston: Academic Press, 1989.

42. R. Rubenstain, H. Hersh "The Human Factor Designing Computer Systems for People", Digital Press, Burlington, MA, 1984.

43. R.S. Gallagher "Computer Visualization", CRC Press, 1995.

44. G.S. Miller "The Definition and Rendering of Terrain Maps", Computer Graphics (SIGGRAPH'86 Proceedings), 20(4), pp 39 48,1986.

45. H.O. Peitgen, D. Saupe "The Science of Fractal Images", New York: SpringerVerlag, 1988.

46. J. Bloommenthal, С. Bajaj, J. Blinn, M.P. Cani-Gascuel, A. Rockwood, B. Wyvill, G. Wyvill "Introduction to Implicit Surfaces", Morgan Kaufman Publishers, Inc., 1997.

47. D.S. Ebert, R.E. Parent "Rendering and Animation of Gaseous Phenomena by Combining Fast Volume and Scanline A-buffer Techniques", Computer Graphics (SIGGRAPH'90 Proceedings), 25, pp 357 366, August 1990.

48. V.V. Aleksandrov, N.D Gorsky "From humans to computers : cognition through visual perseption", Word Scientific Publishing, 1991.

49. B.B. Александров, Н.Д. Горский "Представление и обработка изображений. Рекурсивный подход", изд. Наука 1985.

50. В.В Александров "Глаз и визуальное восприятие", Оптический журнал, т.66, 9, Сентябрь 1999.

51. А.В. Grigoriev, S.Yu. Belyaev "Case Study for Natural Phenomena Visualization: water foam", New Approaches to High-Tech Materials: Nondestructive Testing and Computer Simulations in Materials Science and Engineering, pp. 289 -293, June 1997.

52. A.B.Grigoriev "Case study for natural phenomena visualization: weather effects", Nondestructive Testing and Computer Simulations in Science and Engineering, pp. 224 228, June 1998.

53. A.B.Grigoriev "Case study for natural phenomena visualization: water foam and smoke", Nondestructive Testing and Computer Simulations in Science and Engineering, pp. 243 249, June 1999.

54. С.Ю.Беляев, А.Б.Григорьев "Моделирование природных явлений и объектов в компьютерной графике реального времени:водная пена", Труды кафедры Прикладной математики, 1999.

55. А.Б.Григорьев "Моделирование природных явлений и объектов: клочковатый туман", Студенческая конференция СПбГТУ, 1999.

56. К. Akeley, Т. Jermoluk "High Performance Polygon Rendering", (SIGGRAPH'88 Proceedings), 22(4), pp. 239 - 246, August 1988.

57. J.C. Chung "Exploring Virtual World with Head Mounted Displays", Proc. SPIE Meeting on Non-Holographies True 3-Dimensional Display Technologies, 1083, Los Angeles, Jan. 15-20, 1989.

58. Л. Г. Лойцянский "Механика жидкости и газа", М.: Наука, 1970.

59. А. А. Самарский "Теория разностных схем", М.: Наука. 1989.