Archive for March, 2009
Освітлення в додатках реального часу Модель освітлення Модель затінювання
No comments
Спершу потрібно буде побудувати модель освітлення , по якій можна визначити освітленість в деякій крапці, якщо відомі параметри цієї крапки, спостерігача і джерел світла. У додатках реального часу використовуються полігональні моделі, коли вся геометрія на сцені складається з багатокутників.
Вони, в загальному випадку, складаються з декількох пікселів і потрібно сформулювати модель затінювання - спосіб освітити кожен полігон окремо, знаючи лише інформацію у вершинах.
Модель освітлення
Интернет-магазин мебели для жизни: Звоните, стулья киев .
В це завдання входить класифікація джерел світла на направлені, точкові і прожектори. Для кожного з них треба запропонувати розрахункову формулу освітленості у вершинах.
Прим. Всі три типи джерел світла, перераховані вище, доступні в OPENGL.
Модель затінювання
Уміючи розраховувати освітлення у вершинах, потрібно освітити кожен окремий трикутник на сцені. Існують плоска модель затінювання, затінювання по Гуро і Фонгу (попіксельноє освітлення). Ці моделі описують, як освітленість інтерполюється по полігону …
Освітлення в додатках реального часу Модель освітлення Модель затінювання →
3D - Графіка
No comments Як приклад розглянемо найбільш складний варіант тривимірного моделювання - створення рухливого зображення реального фізичного тіла.
В спрощеному вигляді для просторового моделювання об’єкту потрібний:
- спроектувати і створити віртуальний каркас (“скелет”) об’єкту, якнайповніше відповідний його реальній формі;
- спроектувати і створити віртуальні матеріали, по фізичних властивостях візуалізації схожі на реальні;
- привласнити матеріали різним частинам поверхні об’єкту (на професійному жаргоні - “спроектувати текстури на об’єкт”);
Горящие путевки в Египет! Спешите: египет горящие путевки . Горящие туры в Египет со скидкой.
- набудувати фізичні параметри простору, в якому діятиме об’єкт, - задати освітлення, гравітацію, властивості атмосфери, властивості взаємодіючих об’єктів і поверхонь;
- задати траєкторії руху об’єктів;
- розрахувати результуючу послідовність кадрів;
- накласти поверхневі ефекти на підсумковий анімаційний ролик.
Для створення реалістичної моделі об’єкту використовують геометричні примітиви (прямокутник, куб, куля, конус та інші) і гладкі, так звані поверхні сплайнів. У останньому випадку застосовують найчастіше метод бікубічеськіх раціональних В-сплайнов на нерівномірній сітці (NURBS). Вид поверхні при цьому визначається …
3D - Графіка →
Вектори в просторі Однорідні координати Матриці перетворень
No comments Про що конкретно йдеться буде зрозуміле з контексту.
В рамках даної статті вектор подразумеваєтся в сенсі вектор-крапка.
Однорідні координати
Визначення. Однорідні координати - координати, що володіють тією властивістю, що визначуваний ними об’єкт не міняється при множенні всіх координат на одне і те ж число.
Однорідними координатами вектора (х, у, z) є трійка чисел (x’, у’, z’, w), де х = х’ / w, у = у’ / w, z = z’ / w, а w - деяке дійсне число (випадок, коли w = 0 є особливим).
Дані координати не дозволяють однозначно задати точку простору. Наприклад, (1, 1, 1, 1) і (2, 2, 2, 2) задають одну і ту ж крапку (1, 1, 1). При переході до однорідних координат для крапки з координатами (x, у, z) пропонується узяти набір (x, у, z, 1). …
Вектори в просторі Однорідні координати Матриці перетворень →
Поворот площини за допомогою миші
No comments
В даному випадку, щоб отримати точки M0’ і M’ треба просто нормалізувати вектори OM0 і OM. Тепер повернемо площину, щоб вектор OM0’ перейшов в OM’. Виявляється це не так просто, як може показатися на перший погляд.
Кут між векторами
Подивимося, як підрахувати кут між векторами в декартовій системі координат. Перше, що приходить в голову, це скористатися скалярним твором.
Проблема полягає в тому, що для скалярного твору вектора OM” і OM’ будуть невиразні. Можна отримати косинус кута між ними. Але якщо обертати площину від OM до OM’, то обертання йде за годинниковою стрілкою. У разі OM” - проти вартовий. Т.ч. образом окрім значення кута необхідно знати його знак. Тут може допомогти “векторний твір”.
Прим. Оскільки ми працюємо в двомірному просторі, то строго говорити про векторний твір …
Поворот площини за допомогою миші →
Математичне завдання прямій на площині
No comments
Прямою лінією називатимемо лінію, шлях уздовж якої рівний відстані між двома крапками.
Прим. В конкретній статті не намагатимемося строго визначити геометрію, оскільки розглядається практична сторона питання. Але разом з тим, хочеться підкреслити, що строге введення даних понять не є тривіальним.
Прим. Поки розглядаються ідеальні геометричні об’єкти, точки яких можуть мати довільні дійсні координати.
Розглянемо як задається пряма лінія.
Рівняння прямої на площині в декартових координатах Ax + By + C = 0
Це рівняння дозволяє задати абсолютно будь-яку пряму на площині. При цьому коефіцієнти A і B можуть звертатися в нуль, але не одночасно:
A2 + B2 > 0
Трійка чисел (A, B, C) є однорідними координатами будь-якої прямої площини в двовимірному просторі всіх прямих площини . Однорідні координати в …
Математичне завдання прямій на площині →
Аффінноє перетворення і його матричне уявлення
No comments
Прим. Дані координати не дозволяють однозначно задати точку площини. Наприклад, (1, 1, 1) і (2, 2, 2) задають одну і ту ж крапку (1, 1). Пропонується узяти набір (x, у, 1), який описуватиме всі точки площини.
Матриця перетворення для однорідних координат має розмір 3х3. Розглянемо деякі перетворення в однорідних координатах.
Стиснення/розтягування
Це перетворення умножає відповідні координати точок на коефіцієнти масштабування по осях: (x, у) -> (ах * x, ау * у). Матриця перетворення запишеться таким чином:
[ ах 0 0 ]
[ 0 ау 0 ]
[ 0 0 1 ]
Де ах - розтягування по осі x,
ау - розтягування по осі у.
Прим. Можна відмітити, що при негативних значеннях коефіцієнтів стиснення/розтягування відбувається …
Аффінноє перетворення і його матричне уявлення →

