Вход

Визуализации вулкана

Рекомендуемая категория для самостоятельной подготовки:
Курсовая работа*
Код 592487
Дата создания 2019
Страниц 37
Мы сможем обработать ваш заказ (!) 23 сентября в 12:00 [мск]
Файлы будут доступны для скачивания только после обработки заказа.
7 290руб.
КУПИТЬ

Содержание

ТИТУЛЬНЫЙ ЛИСТ
Введение………………………………………………………. 4
АНАЛИТИЧЕСКИЙ РАЗДЕЛ………………………………. 6
Постановка задачи…………………………………………… 6
Описание и анализ предметной области……………….... 6
Обзор существующих методов и алгоритмов………….... 7
Растеризация…………………………………………............ 9
Трассировка лучей……………………………………......... 12
Способы представления модели и требования, предъявляемые к алгоритму визуализации……………… 14
Оценка и сравнение существующих методов…………….. 16
Выбор алгоритма…………………………………………….... 18
КОНСТРУКТОРСКИЙ РАЗДЕЛ………………………….19
Алгоритм поиска пересечений луча с моделью вулкана.. 19
Алгоритм для нахождения освещения в точке…………... 23
Алгоритм для нахождения нормали в точке……………... 23
ТЕХНОЛОГИЧЕСКИЙ РАЗДЕЛ………………………… 25
Выбор среды разработки и языка программирования.…. 25
Диаграмма и описание классов…………………………….. 25
Интерфейс программы…………………………………….…. 30
ИССЛЕДОВАТЕЛЬСКИЙ РАЗДЕЛ……………………… 32
Примеры работы программы………………………………... 32
Заключение………………………………………………………35
Список использованной литературы……………………….. 36

Введение

В современном мире сложно обойтись без компьютерной 3D-графики. Несмотря на то, что сам термин “компьютерная графика” появился лишь в 60-х годах прошлого века, трехмерная графика уже прочно вошла в наш мир и в настоящее время используется практически повсеместно: в науке и искусстве, в рекламе и дизайне, в киноиндустрии и видеоиграх, и т.д.

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

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

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

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

Фрагмент работы для ознакомления

Ключевые слова: трассировка лучей (raytracing), воксели (voxels), динамическое изображение, С++, Qt.
Курсовая работа по дисциплине "Компьютерная графика" на тему "Визуализация вулкана".

Краткое описание (более подробное см. ниже):
- включает в себя расчетно-пояснительную записку на 37 листов и исходные коды
- написана на C++ и Qt (Qt используется для граф. интерфейса и рисования изображения)
- не используются физические расчеты; для движения жидкости используется простой собственный алгоритм движения лавы (частиц жидкости)
- для создания изображения используется метод трассировки лучей
- есть тени, можно менять позицию источника освещения
- модель задается не полигонами, а вокселями (внутри программы, без загрузки файлов и прочего)
- описаны собственные классы
- программа использует многопоточные вычисления (без использования видеокарты, т.е. программа будет работать на любом компьютере/ноутбуке)
- написана в среде QtCreator, исходные коды идут в архиве, сборка возможна как под Windows, так и под MacOS
- в коде присутствуют комментарии

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

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

Computer graphics : principles and practice / John F. Hughes, Andries van Dam, Morgan McGuire, David F. Sklar, James D. Foley, Steven K. Feiner, Kurt Akeley.—Third edition.;

Combining Rasterization and Ray Tracing Techniques to Approximate Global Illumination in Real-Time / João Cabeleira. [Электронный ресурс] – Режим доступа: https://pdfs.semanticscholar.org/008d/6628e0787a95b802dae28546593078d4ab7a.pdf

What’s the Difference Between Ray Tracing and Rasterization? / Brian Caulfield. [Электронный ресурс] – Режим доступа: https://blogs.nvidia.com/blog/2018/03/19/whats-difference-between-ray-tracing-rasterization/

Interactive Ray Tracing / A.J. van der Ploeg. [Электронный ресурс] – Режим доступа: http://www.few.vu.nl/~kielmann/theses/avdploeg.pdf

Introduction to Realtime Ray Tracing / Philipp Slusallek, Peter Shirley, Bill Mark, Gordon Stoll, Ingo Wald. SIGGRAPH 2005. [Электронный ресурс] – Режим доступа: https://slideplayer.com/slide/8456919/

Регулярные сетки для высоко реалистичной визуализации 3D сцен в реальном времени / А.В. Мальцев, М.В. Михайлюк. [Электронный ресурс]. — Режим доступа: http://www.isa.ru/jitcs/images/documents/2012-04/49_58.pdf

Efficient Sparse Voxel Octrees – Analysis, Extensions, and Implementation / Samuli Laine, Tero Karras. NVIDIA Research
[Электронный ресурс]. — Режим доступа: https://users.aalto.fi/~laines9/publications/laine2010tr1_paper.pdf

Efficient acceleration structures for ray tracing static and dynamic scenes / Thiago Ize. [Электронный ресурс]. — Режим доступа: http://www.cs.utah.edu/~thiago/papers/thesis_ize.pdf — С. 5-6.

KD-Tree Acceleration Structures for a GPU Raytracer / Tim Foley and Jeremy Sugerman. [Электронный ресурс]. — Режим доступа: https://graphics.stanford.edu/papers/gpu_kdtree/kdtree.pdf

A Fast Voxel Traversal Algorithm for Ray Tracing / John Amanatides, Andrew Woo. [Электронный ресурс]. — Режим доступа: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.42.3443&rep=rep1&type=pdf

Rendering (computer graphics). [Электронный ресурс]. — Режим доступа: https://en.wikipedia.org/wiki/Rendering_(computer_graphics)#Techniques

Backward v/s Forward Ray Tracing — Режим доступа: http://ray-tracing-conept.blogspot.com/2015/01/backward-vs-forward-ray-tracing.html

Z-buffering [Электронный ресурс]. — Режим доступа: https://en.wikipedia.org/wiki/Z-buffering#Uses
Очень похожие работы
Пожалуйста, внимательно изучайте содержание и фрагменты работы. Деньги за приобретённые готовые работы по причине несоответствия данной работы вашим требованиям или её уникальности не возвращаются.
* Категория работы носит оценочный характер в соответствии с качественными и количественными параметрами предоставляемого материала. Данный материал ни целиком, ни любая из его частей не является готовым научным трудом, выпускной квалификационной работой, научным докладом или иной работой, предусмотренной государственной системой научной аттестации или необходимой для прохождения промежуточной или итоговой аттестации. Данный материал представляет собой субъективный результат обработки, структурирования и форматирования собранной его автором информации и предназначен, прежде всего, для использования в качестве источника для самостоятельной подготовки работы указанной тематики.
bmt: 0.00347
© Рефератбанк, 2002 - 2024