Добро пожаловать на домашнюю страницу языка программирования MC#!
Проект MC#
Главная страница 
Язык MC# 
Документация 
Публикации 
 Примеры 
FAQ 

 
Дистрибутивы
Система программирования MC# 

 
Ссылки
Parallel C# 
Polyphonic C# 
Проект SKIF 

 
Контакты
 Контакты 


Mono powered

Microsoft .Net powered


 
   Информация для сайта

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

Трассировка лучей.

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

 

Метод параллельной трассировки лучей

 

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

Рассмотрим это на примере (http://www.brandonfurtwangler.com/software/PragRay.zip). Сцена для трассировки состоит из N сфер и M источников света (по умолчанию 2 источника света). Картинку «режим» по горизонтали и каждую часть посылаем на узел кластера. Потом все части собираем в одну.

 

Рис 1. Промежуточный этап работы примера

 

Рис 2. Вся картинка.

 

 

Рис 3. Время работы примера.

 

 

Рис 4. Значения КПД.

 

Расчеты проводились на кластере K-500 ( 64 2-хпроцессорных узла на базе Intel Xeon 2,8 ГГц ) Объединенного института проблем информатики Национальной академии наук Беларуси.


Весь Переславль