Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Застосування текстурувань ⇐ ПредыдущаяСтр 5 из 5
Кольорове кодування властивостей. Машинна графіка майже завжди має справу з багатовимірним світом. Проектування вироби аж ніяк не закінчується побудовою його об'ємної моделі. Далі потрібно провести технологічні розрахунки, визначаючи навантаження, обтічність, розподіл електричного потенціалу. Таким чином, як правило, моделювання об'єктів і явищ пов'язане із завданням дослідження пов'язаних з моделлю числових даних, які визначають одне або кілька властивостей моделі. Наявність декількох властивостей перетворює 3D світ моделі в світ більшої розмірності. Текстурування більш формально ця задача називається візуалізацією даних - числових векторів, заданих на деякій підмножині точок 3D простору. Кожна компонента вектора (або канал) відповідає значенню певної властивості. Традиційно для зображення одної властивості - у разі скалярних даних, що складаються з одного компонента, використовується колірне кодування. Здається відображення області визначення властивості - всіх його можливих значень, на наявну колірну палітру. При моделюванні таке відображення може бути задане інтерактивно. Кожна точка зображуваного геометричного об'єкта замальовується таким кольором, який відповідає значенню властивості в цій точці. Таким прийомом можна, наприклад, зобразити розподіл навантажень на механічній деталі або потенціал взаємодії на поверхні молекули. У використанні колірного кодування є проблема, яка є наслідком деяких особливостей застосовуються на практиці методів зафарбовування поверхонь. Як пояснювалося раніше, при замальовці полігональних поверхонь кольору задаються в вершинах сітки, на яку натягується поверхню. У точках поверхні, які не є вершинами, колір обчислюється в результаті інтерполяції. У сучасних графічних архітектурах використовується два базових способу інтерполяції зафарбовування. · Плоска зафарбування - найпростіший і обчислювально найбільш дешевий спосіб: для зафарбовування нутрощі кожного полігону застосовується один колірний тон, заданий у певному вузлі полігону. Результат візуалізації виходить не надто хороший - буде видно ребра між сусідніми полігонами. Можливість швидко отримати прийнятний результат - це, мабуть, головне достоїнство цієї моделі. · Зафарбування Гуро згладжує тоновий перехід між ребрами полігонів, обчислюючи шляхом лінійної інтерполяції колір для кожного пікселя полігону. Згладжену поверхню більш природно моделює віддзеркалення світла і робить візуалізацію реалістичніше. Модель зафарбовування Гуро застосовується, в якості стандартного методу в OpenGL[9]. При зображенні значень за допомогою колірного кодування гладкість переходів може виявитися шкідливою. Якщо є дві суміжні області з істотно різними значеннями властивості, які при колірному кодуванні закрашуються різними кольорами, застосування методу Гуро згладить перехід між ними і не дасть можливості показати різкі перепади. Для боротьби з цим неприємним властивістю доводиться збільшувати ступінь подробиці сітки, проте це призводить до різкого зростання обчислювальних витрат і не годиться для інтерактивних додатків. Ця проблема може бути вирішена за допомогою текстури. Палітра кольорів, використовувана для зображення значень властивостей, реалізується у вигляді зображення 1D текстури. При генерації вершин сітки, апроксимуючої поверхні, скалярні значення використовуються, як текстурні координати. На відміну від прямого колірного кодування, в даному способі інтерполяція проводиться в просторі текстури і колір кожного пікселя обчислюється за отриманими текстурованим координатах. У результаті навіть для рідкісної сітки можна забезпечити різкі зміни колірного коду у вузькій області поверхні і отримати висококонтрастне зображення. За допомогою накладення текстури різкі переходи від одного колірного значення до іншого істотно поліпшують точність рендеринга. Крім того, ці різкі переходи допомагають візуально сприймати форму об'єкта в об'ємі. Різниця між двома підходами показана на двох конкретних прикладах (малюнок 3) - кольорова інтерполяція (Рис.3.А.) і текстурування (Рис.3.Б.). Рис3.А.Кольорова інтерпретація. Б. Текстурна інтерпретація. Додаткові переваги пов'язані з незалежністю об'єктних і текстурних координат і полягають у можливості внесення швидких змін в відображення текстури –в колірний код. Використовуючи матрицю текстури і застосовуючи перетворення зсуву в її просторі, можна змінювати точку відліку колірного коду. Перетворення масштабування простору текстури дозволяє змінювати діапазон відображення. Ці перетворення можуть бути виконані в реальному часі[6].
Date: 2015-07-17; view: 383; Нарушение авторских прав |