Тривимірні примітиви
Примітиви (primitives) — основні об'ємні геометричні форми, будівельні блоки програм тривимірної графіки. Вони за умовчанням вже готові до участі в моделюванні, крім того, їх можна змінювати за допомогою булевих операцій. Хоча багато примітивів можна створити шляхом обертання або витискування плоских форм, в більшості програм вони присутні вже в завершеному варіанті, тим самим полегшуючи процес моделювання. До основних об'ємних примітивів відносяться куби, піраміди, конуси, сфери і тора. Як і у двомірних форм, рівень роздільної здатності цих примітивів піддається зміні, тому при збільшенні кількості сторін і кроків, використовуваних для визначення примітивів, їх зовнішній вигляд стає більш згладженим. Такі примітиви, як конуси або півсфери, мають плоский розділ, званий верхівкою (вершиною – cap (англ.). Деякі програми дозволяють задавати певний вид верхівки або навіть зовсім її прибирати.
Основні тривимірні примітиви, а) Куб. 6) Циліндр, в) Труба, г) Сфера, д) Тор. е) Конус
| Додаткові тривимірні примітиви, доступні в деяких програмах, мають скошені або закруглені краї і складно модельовані форми, а) Згладжений куб. би) Вал. у) Згладжений циліндр. г)Торовыйузел д) Капсула. е) Зіркоподібний многогранник |
Надмірне, часто недоречне використання початкових (незмінених) примітивів є однією з найбільш поширених помилок новачків. Основою для тривимірних об'єктів краще вибрати менш ідеальні двомірні форми. Примітиви швидше підійдуть як будівельні блоки для створення складних форм або на задньому плані сцени, де додаткові деталі так чи інакше втрачаються. Крім того, примітиви добре використовувати на передньому плані після трансформації або модифікації їх зовнішнього вигляду. У деяких програмах можна зустріти набір додаткових, "витонченіших" примітивів, які, можливо, доречніші на передньому плані, оскільки володіють викривленими або закругленими краями, а не що грубо "витесали", видавали їх комп'ютерне походження [1].
Зафарбовування поверхонь здійснюється методами Гуро (Gouraud) або Фонга (Phong). У першому випадку колір примітиву розраховується лише в його вершинах, а потім лінійно інтерполюється по поверхні. У другому випадку будується нормаль до об'єкту в цілому, її вектор інтерполюється по поверхні примітивів і освітлення розраховується для кожної крапки.
Світло, що йде з поверхні в конкретній крапці у бік спостерігача, є сумою компонентів, помножених на коефіцієнт, пов'язаний з матеріалом і кольором поверхні в даній крапці. До таких компонентів відносяться:
світло, що прийшло із зворотного боку поверхні, тобто заломлене світло (Refracted);
світло, що рівномірно розсіюється поверхнею (Diffuse);
дзеркально відображене світло (Reflected);
відблиски, тобто відображене світло джерел (Specular);
власне свічення поверхні (Self Illumination).
Наступним етапом є накладення (“проектування”) текстур на певні ділянки каркаса об'єкту. При цьому необхідно враховувати їх взаємний вплив на межах примітивів. Проектування матеріалів на об'єкт – завдання що важко формалізується, вона схожа на художній процес і вимагає від виконавця хоч би мінімальних творчих здібностей.
Після завершення конструювання і візуалізації об'єкту приступають до його “пожвавлення”, тобто завданню параметрів руху. Комп'ютерна анімація базується на ключових кадрах. У першому кадрі об'єкт виставляється в початкове положення. Через певний проміжок (наприклад, у восьмому кадрі) задається нове положення об'єкту і так далі до кінцевого положення. Проміжні значення обчислює програма по спеціальному алгоритму. При цьому відбувається не просто лінійна апроксимація, а плавна зміна положення опорних точок об'єкту відповідно до заданих умов.
Ці умови визначаються ієрархією об'єктів (тобто законами їх взаємодії між собою), дозволеними площинами руху, граничними кутами поворотів, величинами прискорень і швидкостей. Такий підхід називають методом інверсної кінематики руху. Він добре працює при моделюванні механічних пристроїв. У випадку з імітацією живих об'єктів використовують так звані скелетні моделі. Тобто, створюється якийсь каркас, рухомий в крапках, характерних для модельованого об'єкту. Рухи крапок прораховуються попереднім методом. Потім на каркас накладається оболонка, що складається із змодельованих поверхонь, для яких каркас є набором контрольних крапок, тобто створюється каркасна модель. Каркасна модель візуалізується накладенням поверхневих текстур з урахуванням умов освітлення. В ході переміщення об'єкту виходить вельми правдоподібна імітація рухів живих істот.
Найбільш довершений метод анімації полягає у фіксації реальних рухів фізичного об'єкту. Наприклад, на людині закріплюють в контрольних крапках яскраві джерела світла і знімають заданий рух на відео- або кіноплівці. Потім координати точок по кадрах перекладають з плівки в комп'ютер і привласнюють відповідним опорним точкам каркасної моделі. В результаті руху імітованого об'єкту практично невідмітні від живого прототипу.
Процес розрахунку реалістичних зображень називають рендерінгом (візуалізацією). Більшість сучасних програм рендерінгу засновані на методі зворотного трасування променів (Backway Ray Tracing). Застосування складних математичних моделей дозволяє імітувати такі фізичні ефекти, як вибухи, дощ, вогонь, дим, туман. Після закінчення рендерінгу комп'ютерну тривимірну анімацію використовують або як самостійний продукт, або як окремі частини або кадри готового продукту.
Особливу область тривимірного моделювання в режимі реального часу складають тренажери технічних засобів – автомобілів, судів, літальних і космічних апаратів. У них необхідно дуже точно реалізовувати технічні параметри об'єктів і властивості навколишнього фізичного середовища. У простіших варіантах, наприклад при навчанні водінню наземних транспортних засобів, тренажери реалізують на персональних комп'ютерах.
Самі дієві на сьогоднішній день пристрої створені для навчання пілотуванню космічних кораблів і військових літальних апаратів. Моделюванням і візуалізацією об'єктів в таких тренажерах зайнято декілька спеціалізованих графічних станцій, побудованих на могутніх RISC-процесорах і швидкісних відеоадаптерах з апаратними прискорювачами тривимірної графіки. Загальне управління системою і прорахунок сценаріїв взаємодії покладені на суперкомп'ютер, що складається з десятків і сотень процесорів. Вартість таких комплексів виражається девятизначними цифрами, але їх застосування окупається достатньо швидко, оскільки навчання на реальних апаратах в десятки разів дорожче.
- Добровольський ю.Г., Прохоров г.В.
- Тема 1. Основи нарисної геометрії Лекція 1. Основні правила виконання креслень.
- Короткий історичний огляд.
- Поняття про креслення.
- Креслярські приладдя.
- Креслярські матеріали.
- Лінії креслення.
- Формати креслень.
- Основні написи.
- Нанесення розмірів на кресленнях.
- Розмірні та виносні лінії.
- Розмірні числа.
- Масштаби.
- Побудова та поділ прямих ліній.
- Побудова паралельних прямих.
- Побудова перпендикулярних прямих.
- Коло та правильні многокутники. Основні терміни.
- Спряження ліній.
- Спряження паралельних ліній.
- Спряження двох дуг кіл.
- Спряження двох кіл.
- Циркульні криві.
- Лекальні криві.
- Парабола.
- Гіпербола.
- Синусоїда.
- Загальні положення.
- Вигляди.
- Виносні елементи.
- Перерізи.
- Виготовлення креслень
- Нанесення розмірів на робочих кресленнях деталей
- Лекція 2. Виконання інженерних креслень
- Додаток 1. Класифікація конструкторських документів
- Класифікація схем та основні положення гост 2.701-84
- Комплектність конструкторської документації
- Позначення виробів і конструкторських документів
- Нормативно-технічна документація єскд
- Додаток 2. Позначення в електричних колах. Символи
- Тема 2. Концептуальні основи подання графічних зображень. Двовимірні зображення та їх перетворення Лекція 3. Предмет, методи і завдання дисципліни.
- – Додаткова:
- Предмет і область застосування комп'ютерної графіки
- Коротка історія
- Технічні засоби підтримки комп'ютерної графіки
- Лекція 4. Принципи подання графічних зображень. Світло та зображення. Поняття трасування променів. Зоровий апарат людини
- Лекція 5. Геометричні перетворення двовимірних зображень
- Геометричні перетворення (перенос, масштабування, обертання)
- Відтинання, проективне перетворення, растрове перетворення відсікання відрізків
- Двовимірний алгоритм Коена-Сазерленда
- Проективне перетворення
- Растрове перетворення графічних примітивів
- Тема 3. Растрова та векторна графіка Лекція 6. Растрова графіка
- Лекція 7. Векторна графіка
- Загальна харктеристика прогарами CorelDraw Інтерфейс програми
- Стандартна панель інструментів
- Панель інструментів
- Створення векторних об'єктів Створення простих фігур
- Малювання ліній
- Основи роботи з текстом Види тексту у CorelDraw
- Редагування тексту
- Редагування зображень Виділення об'єктів
- Накладення об'єктів один на одного
- З'єднання об'єктів
- Зміна форми стандартних об'єктів
- Тема 4. Алгоритмічні основи тривимірної графіки Лекція 8. Основні поняття тривимірної графіки
- Основні поняття тривимірної графіки
- Тривимірні примітиви
- Програмні засоби обробки тривимірної графіки
- Зв'язок між декартовими та полярними координатами
- Тривимірне розширення
- Ц иліндричні координати
- Сферичні координати
- Перехід до інших систем координат
- Афінне перетворення
- Афінні координати Афінна система координат на прямій, на площині, в просторі
- Координати векторів і крапок в афінній системі координат
- Візуалізація просторових реалістичних сцен Світло- тіньовий аналіз
- Тема 5. Комп'ютерне проектування в системі AutoCad Лекція 9. Графічна система проектування AutoCad та створення 2d об'єктів в AutoCad
- Лекція 10. Графічна система проектування AutoCad та створення 3d об'єктів в AutoCad