Яка різниця між відображенням переміщення та картою висоти?


15

Яка різниця між відображенням переміщення та відображенням висоти та чим пов’язана адаптивна тесселяція?


Отже, давайте скажемо, коли я хочу використовувати відображення висоти на маленькому об’єкті, тобто кулі, які методи я використовую для усунення тріщин? Згладжування? Це більш ефективно, ніж переміщення та адаптивна тесселяція?
Jinxi

Відповіді:


10

Картографування зміщення та відображення висоти - це два назви для «майже» однієї і тієї ж техніки, вони спрямовані на те, щоб зробити той же ефект, але використовуються в різних контекстах.

Щоб пояснити більше:

Картозміщення зміщення: це техніка, яка має на меті відобразити нерівності як справжню геометрію, в дуже тонкій сітці. На відміну від картового картографування, паралакса та рельєфного відображення, яке намагається "підробити" удари за допомогою звичайних карт, переміщення зміщення фактично зміщує поверхню, створюючи трикутники між текселями. .

Зіставлення висоти: те саме, але зазвичай використовується в контексті, коли карта зміщення (також звана карта висоти) застосовується на місцевості, де значення використовуються лише для зміни висоти вершин.

Він може бути реалізований на процесорі або GPU.

Один загальний підхід CPU - це зчитування значень висоти або переміщення з карти висоти / переміщення (текстури), де кожен тексель безпосередньо відображається в одну вершину. Де кожен тексель кодує значення висоти / зміщення. Потім це застосовується безпосередньо до геометрії, переміщуючи кожну вершину, використовуючи шукане значення в унікальному напрямку.

Вибір напрямку може здійснюватися у напрямку вгору (як правило, у випадку місцевості), що призводить до зміни значення вершини Y, або може бути у напрямку обличчя, нормальним, як правило, для об'єктів, крім місцевості.

Альтернативою GPU є використання функції вибору текстури вершини (запровадженої в Shader Model 3.0) для зміни сітки місцевості за допомогою доступу до карти переміщення / висоти. Вибір, отриманий з текстури, використовується програмою затінення вершин для зміни місця розташування вершини. .

Інші способи використання текстури дозволяють швидше керувати даними для моделювання хвиль та інших анімацій, що застосовуються до мережі.

Що стосується адаптивного tessellation:

Одне недоліки відображення переміщень полягає в тому, що для великих місцевостей потрібно багато полігонів і вершин для моделювання деталізованої місцевості, що робить відображення переміщень якось неефективним для великих місцевостей.

Саме тут пристосовується адаптивна тесселяція та рівень деталізації методик, щоб зробити картографування переміщень більш можливим, особливо з просуненням графічних процесорів та впровадженням геодезичних шейдерів. Програмувати та на новіших графічних процесорах це просто і має недоліки.

Інші методи, такі як рельєфне та надувне картографування, пропонують додатковий реалізм за загально розумних витрат, але той факт, що основна поверхня не обмежена, робить виявлення зіткнення, а отже, і взаємодію об'єктів, більш складним завданням.

Як висновок, картографічне переміщення та адаптивна тесселяція забезпечує чудові деталі та якість з меншими зворотами та можливими витратами на продуктивність.


Не забувайте останню частину питання "та який зв'язок із адаптивною тесселяцією?"
MichaelHouse

@ Byte56 дякую за повідомлення, я оновив відповідь.
concept3d

12

Відображення зміщення може означати (але не завжди означає) a зміщення переміщення вектора в кожній точці поверхні. Зображення висоти має на увазі лише значення скалярного зміщення, тобто кожна точка підсувається уздовж свого нормального. Термін "відображення переміщень" також може використовуватися для скалярних переміщень, однак, коли обговорюються векторні переміщення, люди часто прямо говорять "векторне відображення переміщень".

Тесселяція може бути використана для нанесення карти переміщення, розділивши поверхню на невеликі багатокутники і застосувавши зміщення (поглядом з карти) до кожної вершини підрозділеної поверхні. Рівень підрозділу, який вам потрібен, залежить частково від того, наскільки шумна / деталізована карта переміщення, тому адаптивна тесселяція може бути використана для більш тонкого поділу на ділянки, що мають більше деталей, але менше в районах, які більш плоскі, покращуючи продуктивність.


Це об’єктивно правильна відповідь. Тонка різниця стане набагато важливішою, оскільки початківці знаходять більше коду tessellation для копіювання пасти. (Процедурне переміщення вектора вже було показано nVidia)
MickLH

3

В основному, це одне і те ж.

Картозміщення зміщення - це техніка додавання деталей поверхні, як картографування на груди . Однак, на відміну від картового зіставлення, відображення зміщення - це фактично деформація геометрії на основі деякої вхідної карти висоти (по суті, сітки значень висот).

"Картозміщення переміщень" - це в основному інший, більш технічно точний термін для того, що в розмовному розумінні називається "відображення по висоті" (строго кажучи, "відображення висоти", мабуть, має стосуватися процесу генерації сітки даних висот з якогось вихідного матеріалу, наприклад як 3D-сканер, який буде використовуватися в реалізації карти переміщення, але на практиці більшість людей просто використовують терміни взаємозамінно, якщо вони взагалі говорять про "відображення переміщення".

Методика не пов'язана безпосередньо з адаптивною тесселяцією, яка сама по собі контролює розбиття математичного опису сітки (наприклад, сфери) на конкретну колекцію трикутників, яка буде використана для візуалізації цієї сітки. "Адаптивний" біт означає, що деталізація tessellation зміниться на основі деяких вхідних критеріїв, таких як відстань перегляду.

Наприклад, у випадку зі сферою, ви можете дуже жорстоко (ефективно, як кубик) цесселювати цю сферу, коли ця сфера знаходиться дуже далеко, але використовувати детальніше, коли сфера знаходиться поблизу.

Часто ви побачите такі методи, як картографування переміщень, обговорювані спільно з тесселяцією, оскільки тесселяція впливатиме на те, як ви хочете відобразити карту піднесення в геометрію для виконання переміщення (або яке дозвіл карти висоти ви хочете вибрати, і так далі).


2

Вони те саме поняття.

EDIT: Зміщення може складатися з висот у більш ніж одному вимірі!

Не починайте жодних семантичних війн з цього приводу, але реально, картографування висоти зазвичай стосується методів на основі великого масштабу / тесселяції, де картографування переміщень зазвичай стосується маломасштабних / методів випромінювання.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.