Главная » Просмотр файлов » Задание 4 по машграфу 2013

Задание 4 по машграфу 2013 (1124442), страница 2

Файл №1124442 Задание 4 по машграфу 2013 (Task 4) 2 страницаЗадание 4 по машграфу 2013 (1124442) страница 22019-05-11СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 2)

Т.е. трассировка лучей ­рекурсивный алгоритм, а трассировка путей ­ нет (хотя и может быть реализована черезрекурсию).Для моделирования случайного луча с косинусоидельным распределением может бытьполезна следующая функция, позволяющая по 2 случайным числам с равномернымраспределением (r1 и r2) сгенерировать вектор с косинусоидальным (степень косинусазадается в аргументе power) распределением вокруг направления direction. В аргументhit_norm необходимо передавать нормаль в точке поверхности, на которой генерируетсяотраженный луч. Это делается для предотвращения ситуации, когда отраженный лучуходит под поверхность.float3 MapSampleToCosineDistribution(float r1, float r2, float3 direction, float3 hit_norm, floatpower){float e = power;float sin_phi, cos_phi;sincosf(2*r1*3.141592654f, &sin_phi, &cos_phi);float cos_theta = pow(1.0f-r2,1.0f/(e+1.0f));float sin_theta = sqrtf(1.0f-cos_theta*cos_theta);float3 deviation;deviation.x = sin_theta*cos_phi;deviation.y = sin_theta*sin_phi;deviation.z = cos_theta;float3 ny = direction;float3 nx = normalize(cross(ny, make_float3(1.04,2.93f,-0.6234f)));float3 nz = normalize(cross(nx, ny));swap(ny,nz);float3 res = nx*deviation.x + ny*deviation.y + nz*deviation.z;float invSign = dot(direction, hit_norm) > 0.0f ? 1.0f : -1.0f;if(invSign*dot(res, hit_norm) < 0.0f) // reflected ray is below surfaceres = -nx*deviation.x + ny*deviation.y - nz*deviation.z;return res;}Обратите внимание, что каустики в трассировке путей получаются автоматически, еслиисточники света имеют ненулевой размер и используется неявная стратегиясэмплирования.Фотонные картыФотонная карта предназначена для того, чтобы запоминать информацию о падающих наповерхность фотонах. В простейшем случае с каждой поверхностью необходимо связатьлинейный массив, в который должны записываться координаты точки (двумерные, впространстве поверхности) и цвет попавшего в поверхность фотона. Этот массив иназывается фотонной картой. Вы можете сделать только один такой массив ­ дляплоскости, на которой находится кристалл. Для расчета освещения при помощи методафотонных карт на произвольных объектах, как правило, используются различныеускоряющие структуры (например, kd­дерево).Текстурирование объектов сценыОбратите внимание на необходимость реализации как минимум билинейнойинтерполяции при выборке из текстуры (за трилинейную или анизотропную фильтрациюначисляются баллы в соответствии с графой “текстурирование”). При отсутствиифильтрации совсем, баллы за текстурирование могут быть снижены на 0.5.Моделирование глубины резкостиМоделирование эффекта глубины резкости можно сделать, смещая случайным образомпозицию луча (по x и y) в пределах некоторого диска, перпендикулярного направлениювзгляда. Направление луча должно меняться так, чтобы получать на изображенииобласть резкости, а не целиком размытую картинку.Реализация эффекта поглощенияПоглощение света в сплошной однородной среде описывается закономБугера­Ламберта­Бера (экспоненциальное затухание). Для реализации эффектапоглощения в кристалле нужно для каждого луча учитывать длину участков пути,пройденных ими в сплошной среде (в данном случае ­ в кристалле), и домножатьинтенсивность лучей, прошедших через кристалл, на рассчитанный коэффициентпропускания.АнтиалиасингДля борьбы с алиасингом предлагается пускать бОльшее количество лучей черезразличные точки пикселя (multisampling).Реализация цветного кристалла и цветных теней●Если реализовано поглощение в кристалле, следует задать разные коэффициентыпоглощения по R, G, B каналам, что определит цвет кристалла.● Если поглощения нет, нужно при пересечении с поверхностью кристалладомножать цвет луча, на цвет кристалла (простейшее моделирование поглощения).Например, если кристалл голубой, то компоненты r и g луча при прохождении черезкристалл обнуляются.● С теневыми лучами происходит то же самое. Домножая цвет источника света(например, белый) на цвет кристалла, получаем цвет тени..

Характеристики

Тип файла
PDF-файл
Размер
1,61 Mb
Материал
Тип материала
Высшее учебное заведение

Список файлов лабораторной работы

Task 4
решение
RayTracer
bin
data
CrystalModel
Crystal.3DS
Crystal.mtl
Crystal.obj
RayTracer.pdb
RayTracerWithOpenMP.exe
RayTracerWithoutOpenMP.exe
scene_settings.xml
img
src
data
CrystalModel
glm
core
gtc
gtx
virtrev
l3ds
l3ds.cpp
tinyxml2
contrib
tinyxml2-doxygen
search
Camera.h
Main.cpp
Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
7027
Авторов
на СтудИзбе
260
Средний доход
с одного платного файла
Обучение Подробнее