2.85M
Категория: ИнформатикаИнформатика

Трёхмерная графика. §1. Материалы и текстуры

1.

1
Трёхмерная графика
§ 1. Материалы и текстуры
§ 2. Рендеринг
§ 3. Анимация
§ 4. Язык VRML
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

2.

2
Трёхмерная графика
§ 1. Материалы и текстуры
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

3.

Трёхмерная графика, 11 класс
3
Как мы видим цвет предметов?
! Глаз видит лучи, отражённые от предметов!
зеркальное отражение
диффузное отражение
источник света
источник света
камера
камера
предмет
• поверхность
идеально ровная
• угол отражения
равен углу падения
К.Ю. Поляков, Е.А. Ерёмин, 2013
предмет
• размер неровностей
больше длины волны
• отражение во всех
направлениях
http://kpolyakov.spb.ru

4.

Трёхмерная графика, 11 класс
4
Простые материалы
Материал
объект для
просмотра
Название
цвет материала
(диффузное
отражение)
цвет бликов
(зеркальное
отражение)
градиент
шейдеры –
алгоритмы
расчёта
цвета точек
размер блика
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

5.

Трёхмерная графика, 11 класс
5
Простые материалы
! Прозрачность и отражение!
непрозрачность
материала
непрозрачность
блика
отражение
окружающих
прежметов
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

6.

Трёхмерная графика, 11 класс
6
Многокомпонентные материалы
Задача: для разных граней объекта использовать разные
материалы.
добавить новый
материал
удалить
материал
пустой слот
выбрать из
готовых
новый
материал
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

7.

Трёхмерная графика, 11 класс
7
Многокомпонентные материалы
Назначение материала граням:
Tab – перейти в режим правки (Edit mode)
назначить
материал
выделенным
граням
К.Ю. Поляков, Е.А. Ерёмин, 2013
выделить
грани с этим
материалом
снять
выделение
граней с этим
материалом
http://kpolyakov.spb.ru

8.

Трёхмерная графика, 11 класс
8
Текстуры
Текстура — точечное (растровое) изображение, которое
накладывается на поверхность для изменения окраски
или имитации рельефа.
рисунок на сфере
имитация рельефа
Типы текстур:
• готовые изображения
• процедурные текстуры (строятся по некоторому
алгоритму)
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

9.

Трёхмерная графика, 11 класс
9
Текстуры
1) Создать новый материал
3) Выбрать файл с рисунком
ЛКМ
2) Создать новую текстуру
Изображение
или фильм
Выбрать файл
ЛКМ
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

10.

Трёхмерная графика, 11 класс
10
Текстуры
4) Выбрать тип объекта
! F12 – построить
изображение с
текстурой (выполнить
рендеринг)!
Тип объекта
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

11.

Трёхмерная графика, 11 класс
11
Текстуры: UV-развертка
UV-развёртка (UV-mapping): (x, y, z) (u, v)
V
(u, v)
0
К.Ю. Поляков, Е.А. Ерёмин, 2013
(x, y, z)
U
http://kpolyakov.spb.ru

12.

Трёхмерная графика, 11 класс
12
Текстуры: UV-развёртка
1) в свойствах текстуры
включить UV-координаты
UV
2) Tab – перейти в режим правки (Edit mode)
3) выделить нужную грань
4) перейти в окно Редактор UV / изображений
5) выбрать рисунок-текстуру
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

13.

Трёхмерная графика, 11 класс
13
Текстуры: UV-развёртка
6) установить вершины рамки в нужное положение
ПКМ – выделение вершин
G – перемещение
R – вращение
S – изменение размера
ЛКМ – зафиксировать
! F12 – рендеринг!
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

14.

Трёхмерная графика, 11 класс
14
Текстуры: UV-развёртка
Сетка сразу для нескольких вершин:
Выделить все нужные вершины
Редактор UV / изображений
ПКМ – выделение вершин
G – перемещение
R – вращение
S – изменение размера
ЛКМ – зафиксировать
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

15.

15
Трёхмерная графика
§ 2. Рендеринг
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

16.

Трёхмерная графика, 11 класс
16
Что такое рендеринг?
Рендеринг – это построение двухмерного изображения:
проекции трёхмерной сцены на плоскость с учетом
материалов, текстур, освещенности, свойств внешней
среды и т.п.
Что нужно сделать:
• установить источники света
• установить камеру
• определить свойства внешней среды
• выполнить рендеринг (F12)
• сохранить готовое изображение (F3)
Результат рендеринга:
Редактор UV/изображений
(UV/Image Editor)
слоты для изображений:
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

17.

Трёхмерная графика, 11 класс
17
Источники света: Точка (Point)
лучи из центра, освещенность пропорциональна 1/R2
свойства
лампы
тип источника
цвет
затенение
энергия
типы
отражения
закон
затухания
затухание в 2 раза
только в пределах
сферы
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

18.

Трёхмерная графика, 11 класс
18
Источники света
Солнце (Sun): лучи параллельны, освещенность зависит
только от направления лучей
Полусфера (Hemi): лучи от накрывающей полусферы,
освещенность зависит только от направления лучей,
мягкое освещение, нет падающих теней
! Подсветка теневых
частей!
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

19.

Трёхмерная графика, 11 класс
19
Источники света
Область (Area): направленный свет от площадки;
освещенность зависит от направления лучей и
расстояния
! Подсветка от
экрана телевизора!
Прожектор (Spot): свет в пределах конуса; освещенность
зависит от направления лучей и расстояния;
площадка круглая или прямоугольная
эффект
«гало» (halo)
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

20.

Трёхмерная графика, 11 класс
20
Камеры
Камеры — это специальные объекты, которые
позволяют посмотреть на сцену с разных точек, как
через видоискатель фотоаппарата или видеокамеры.
камера
по умолчанию
одна камера
G – перемещение объекта
R – вращение объекта
Num0 – вид с камеры
Ctrl+Alt+Num0 – камеру на этот вид
Shift+F – режим полёта
колёсико – приближение
движение мыши – перемещение, ЛКМ – фиксировать
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

21.

Трёхмерная графика, 11 класс
21
Свойства камеры
свойства
камеры
! Почему 35 мм?
фокусное
расстояние
объектива
тип камеры
35 мм – поле
зрения человека
сдвинуть поле
зрения, не меняя
положения камеры
К.Ю. Поляков, Е.А. Ерёмин, 2013
не «видит» за этими
границами
http://kpolyakov.spb.ru

22.

Трёхмерная графика, 11 класс
22
Камеры
Добавить – Камера
Ctrl+Num0 – сделать выделенную камеру активной (с
неё выполняется рендеринг!)
Связь с объектом-целью (Track To, Look At):
ЛКМ
? Если нет объекта?
Добавить – Пустышка
слежение за ним
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

23.

Трёхмерная графика, 11 класс
23
Внешняя среда (World)
Цвет фона
цвет
фона
К.Ю. Поляков, Е.А. Ерёмин, 2013
цвет
теней
http://kpolyakov.spb.ru

24.

Трёхмерная графика, 11 класс
24
Внешняя среда (World)
Градиентный фон
независимо
от угла
поворота
камеры
цвет
горизонта
К.Ю. Поляков, Е.А. Ерёмин, 2013
в зависимости от
угла поворота
камеры
цвет зенита
http://kpolyakov.spb.ru

25.

Трёхмерная графика, 11 класс
25
Внешняя среда (World)
Фон-текстура
снять выделение
со всех объектов и
выбрать текстуру
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

26.

Трёхмерная графика, 11 класс
26
Параметры рендеринга
Разрешение (Resolution)
размеры
картинки
размеры
1920 50% = 960
1080 50% = 540
масштаб
масштаб 10%
К.Ю. Поляков, Е.А. Ерёмин, 2013
масштаб 25%
масштаб 100%
http://kpolyakov.spb.ru

27.

Трёхмерная графика, 11 класс
27
Параметры рендеринга
Сглаживание (Ant-aliasing)
без сглаживания
К.Ю. Поляков, Е.А. Ерёмин, 2013
сглаживание
http://kpolyakov.spb.ru

28.

Трёхмерная графика, 11 класс
28
Параметры рендеринга
Выходной файл
формат
К.Ю. Поляков, Е.А. Ерёмин, 2013
каталог для
вывода
ч/б
цвет
цвет+альфа
http://kpolyakov.spb.ru

29.

Трёхмерная графика, 11 класс
29
Параметры рендеринга
Штамп (Stamp) – встраиваемая информация
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

30.

Трёхмерная графика, 11 класс
30
Тени
Трассировка лучей – учёт эффекта от прохождения
большого количества лучей от источника.
Свойства источника
включить
построение теней
цвет теней
качество
( время
расчётов)
лампа не
освещает
мягкие тени
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

31.

Трёхмерная графика, 11 класс
31
Тени
Параметры рендеринга
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

32.

32
Трёхмерная графика
§ 3. Анимация
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

33.

Трёхмерная графика, 11 класс
33
Что такое анимация?
Анимация – это быстрая смена изображений-кадров
(frames), 16-18 кадров в секунду.
Как строится анимация?
1) задаётся положение объектов в ключевых кадрах
2) автоматически достраиваются переходы
Временнáя шкала (Timeline)
курсор (текущий кадр)
ключевой кадр
начальный
конечный
текущий
просмотр
переход по ключевым кадрам
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

34.

Трёхмерная графика, 11 класс
34
Ключевые кадры
1) установить курсор на временной шкале на
выбранный кадр
2) задать свойства объекта для этого кадра
3) вставить ключевой кадр, нажав клавишу I
! Курсор над полем!
для каждого свойства
свои ключевые кадры
4) повторить для всех ключевых кадров
Удаление ключевого кадра: Alt+I
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

35.

Трёхмерная графика, 11 класс
35
Анимация
Для любого свойства
ПКМ
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

36.

Трёхмерная графика, 11 класс
36
Анимация
автоматическая вставка ключевых кадров
Запуск анимации «вперёд»: Alt+A
Запуск анимации «назад»: Shift+Alt+A
Останов и на первый кадр: Esc
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

37.

Трёхмерная графика, 11 класс
37
Редактор кривых (Graph Editor)
ПКМ – перетащить
ЛКМ – фиксация
блокировать
видимость
T – тип
перехода
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

38.

Трёхмерная графика, 11 класс
38
Анимация сеточных моделей
Ключи формы (ключевые формы, shape keys) –заранее
заданные положения сеточной модели, между
которыми выполняется переход.
базовая форма (Основа)
К.Ю. Поляков, Е.А. Ерёмин, 2013
форма Улыбка
http://kpolyakov.spb.ru

39.

Трёхмерная графика, 11 класс
39
Ключи формы
данные
объекта
базовая
форма
добавить
ключевые
формы
переместить
вершины
ЛКМ
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

40.

Трёхмерная графика, 11 класс
40
Ключи формы
установить курсор в место ключевого кадра
изменить долю ключевой формы
ПКМ – Вставить
ключевой кадр
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

41.

Трёхмерная графика, 11 класс
41
Настройка переходов
Редактор кривых
ПКМ – перетащить
ЛКМ – фиксация
степень
влияния (0..1)
можно менять
значения
N – показать
свойства
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

42.

Трёхмерная графика, 11 класс
42
Арматура (скелет)
Задача: передвинуть сразу много вершин
арматура
(скелет)
при
! Кости
рендеринге не
видны!
Этапы:
• создание скелета из костей
• привязка вершин сеточной модели к костям
• придание персонажу нужной позы (установка
положения костей)
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

43.

Трёхмерная графика, 11 класс
43
Арматура (скелет)
режим Каркас
Добавить – Скелет – Одна кость
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

44.

Трёхмерная графика, 11 класс
44
Арматура (скелет)
Tab – режим правки
выделить верхнюю вершину
E, затем Z – выдавливание вдоль оси Z
аналогично 3-я
кость
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

45.

Трёхмерная графика, 11 класс
45
Арматура (скелет)
Tab – режим работы с объектами
выделить фигуру короля, затем арматуру
Ctrl+P – установить родительский объект
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

46.

Трёхмерная графика, 11 класс
46
Арматура (скелет)
выделить арматуру
перейти в режим позы
в ключевых кадрах:
изменить положение костей (R – вращение)
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

47.

Трёхмерная графика, 11 класс
47
Арматура (скелет)
Оболочка (Envelope)
Данные объекта
выделить узел, S
(изменить радиус
влияния)
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

48.

Трёхмерная графика, 11 класс
48
Прямая и обратная кинематика
A
обратная кинематика движение кисти В
перемещает
А Б В
предплечье Б и плечо А
Б
В
прямая кинематика
А Б В
движение плеча А перемещает
предплечье Б и кисть В
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

49.

Трёхмерная графика, 11 класс
49
Обратная кинематика
A
1) выделить арматуру
2) перейти в режим позы
Обратная
кинематика
Б
В
Ограничения
кости
3) выделить последнюю кость В
4) установить ограничение кости
«Инверсная кинематика»
5) выбрать длину цепочки (0 –
до конца скелета)
объект, на который
направлена
цепочка
Длина цепи
костей
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

50.

Трёхмерная графика, 11 класс
50
Физические явления
• системы частиц (дым, огонь, волосы, траву)
• жидкости
• столкновения тел
• силовые поля (ветер и магнитное поле)
• ткань
Частицы (Particles)
К.Ю. Поляков, Е.А. Ерёмин, 2013
Физика (Physics)
http://kpolyakov.spb.ru

51.

Трёхмерная графика, 11 класс
51
Система частиц
• пар, огонь, дым, дождь, снег, волосы, …
• невозможно построить сеточную модель
• моделируется как поток частиц
• учитываются свойства среды (гравитация, ветер)
Волосы:
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

52.

Трёхмерная графика, 11 класс
52
Жидкость
• поверхность с большим число граней
• анимация – расчет следующего положения всех вершин
с учетом физических свойств (вязкости) – «выпечка»
• сеточные модели для каждого кадра сохраняются на
диске во временном каталоге (кэширование)
• при изменении параметров всё просчитывается заново
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

53.

Трёхмерная графика, 11 класс
53
Ткань
• разбивается на грани вручную (плоскость, инструмент
Подразделить)
• чем мельче грани, тем точнее моделирование, но
больше время расчётов
• учитывается тип ткани (хлопок, шёлк, кожа, …)
• учитываются силовые поля
• для объектов, которые задерживают ткань,
устанавливается свойство Столкновение (страница
свойств
Физика)
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

54.

Трёхмерная графика, 11 класс
54
Мягкие тела
• моделирование тел, обладающих упругостью
• грани приобретают свойства пружинок
• учёт законов физики
• столкновения, деформации, отталкивание
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

55.

Трёхмерная графика, 11 класс
55
Рендеринг видео
Форматы: AVI, H.264, MPEG, Xvid, Ogg Theora
путь, имя файла
размеры
формат
кадры
цветной
частота кадров
Требования к компьютеру:
• быстродействующий процессор
• большой объём оперативной памяти
Рендер-фермы: farmerjoe.info, renderfarm.fi
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

56.

56
Трёхмерная графика
§ 4. Язык VRML
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

57.

Трёхмерная графика, 11 класс
57
Что такое VRML?
! Трёхмерные сцены – векторные объекты!
• нужен универсальный текстовый формат для
обмена данными
• просмотр в браузерах (с помощью плагина – plugin)
VRML (Virtual Reality Modeling Language = язык
моделирования виртуальной реальности)
Примеры использования:
• виртуальная экскурсия по Мамаеву кургану
www.volgograd.ru/mamayev-kurgan
• 3D-модели исторических событий
www.parallelgraphics.com/products/showroom/event
X3D: современный стандарт для работы с 3D-моделями
на основе VRML и XML.
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

58.

Трёхмерная графика, 11 класс
58
Программное обеспечение
! Файлы *.wrl – простой текст!
world
• текстовые редакторы
форма объектов,
цвет, текстура,
прозрачность,
освещение,
анимация, звуки, …
• VRML-редакторы,
WhiteDune: vrml.cip.ica.uni-stuttgart.de/dune
• плагины для браузеров
Cortona3D Viewer: www.cortona3d.com/cortona
• программы для просмотра 3D-сцен
view3dscene:
castle-engine.sourceforge.net/view3dscene.php
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

59.

Трёхмерная графика, 11 класс
59
Стена
Y
Y

0
X
Z
X
Z

0,1 м
Стена в плоскости XOY:
кодировка
#VRML V2.0 utf8
форма
Shape
«коробка»
X Y Z
{
geometry Box { size 4 3 0.1 }
свойство
}
размеры
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

60.

Трёхмерная графика, 11 класс
60
Просмотр модели
view3dscene:
просмотр
прогулка
полёт
столкновения
по умолчанию:
• центр в начале
координат
• цвет – белый
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

61.

Трёхмерная графика, 11 класс
61
Точка наблюдения
#VRML V2.0 utf8
Shape
{
geometry Box { size 4 3 0.1 }
}
Viewpoint
начальная позиция
{
наблюдателя (X, Y, Z)
position 0 0 5
}
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

62.

Трёхмерная графика, 11 класс
62
Материал: цвет
#VRML V2.0 utf8
Shape
{
geometry Box { size 4 3 0.1 }
appearance Appearance
внешний вид
{
material Material{ diffuseColor 0.7 0.7 0.7 }
}
R
G
B
}
цвет
материал
диффузного
отражения
от 0 до 1
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

63.

Трёхмерная графика, 11 класс
63
Материал: текстура
#VRML V2.0 utf8
Shape
{
geometry Box { size 4 3 0.1 }
appearance Appearance
{
texture ImageTexture { url["texture.png"] }
}
} текстура
рисунок
адрес файла
! Рисунок растягивается на всю поверхность!
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

64.

Трёхмерная графика, 11 класс
64
«Левая стена»
размеры по осям
size 0.1 3 4
Y
Z
X
смещение опорной точки по осям
translation -2.05 0 1.95
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru

65.

Трёхмерная графика, 11 класс
65
Преобразования (Transform)
преобразования
rotation – поворот
scale – изменение размеров
Transform
перенос опорной точки
{
translation -2.05 0 1.95
children
[
дочерние объекты
Shape
{
geometry Box { size 0.1 3 4 }
}
]
}
К.Ю. Поляков, Е.А. Ерёмин, 2013
http://kpolyakov.spb.ru
English     Русский Правила