TressFX

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку
AMD TressFX
Тип бібліотека
Розробник AMD
Перший випуск 2014
Версії 4.1.0 (24 січня 2020)[1]
Ліцензія MIT License[2]
Репозиторій github.com/GPUOpen-Effects/TressFX
Вебсайт GPUOpen: TressFX

AMD TressFX — це програмна бібліотека, яка забезпечує розширене моделювання та візуалізацію волосся, хутра та трави для обробки графічним процесором. Початкова бібліотека була написана, щоб добре працювати на продуктах AMD на основі GCN. Версія 3 була випущена 26 січня 2016 року та працює виключно з Direct3D 11 і використовує DirectCompute.

Конкурентним рішенням, пропонованим Nvidia, є HairWorks, який є частиною їхнього пакета Nvidia GameWorks і є пропрієтарною власністю.

Випущене як частина GPUOpen AMD TressFX є вільним програмним забезпеченням з відкритим вихідним кодом, на яке поширюється ліцензія MIT.

Походження та мотивація для розробки[ред. | ред. код]

Традиційно представлення волосся у відеоіграх було неповноцінним з кількох причин. Для короткого волосся (особливо на чоловічих персонажах) часто малювали детальну текстуру на скелеті персонажа. Це ускладнює зображення зачісок, які не притиснуті до черепа. Довше волосся часто показують у вигляді текстури на рухомій частині скелета і, таким чином, рухається як багатосуглобовий придаток. Хоча це волосся має більше коливання, ніж попереднє, воно, як правило, фізично нереалістичне – волосся коливається як одне тіло, і рух дуже часто недостатній або перебільшений.

Щоб подолати це, AMD розробила TressFX Hair, яке моделює кожну з потенційно тисяч пасом волосся окремо за допомогою десятків ланок на пасмо волосся. Кожне пасмо реагує на різні фізичні сили, такі як гравітація, інерція, вітер і рух голови персонажа. Це дозволяє волоссю рухатися набагато реалістичніше.

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

Версії[ред. | ред. код]

Версія 1.0[ред. | ред. код]

TressFX Hair 1.0 був першим випуском цього програмного забезпечення AMD. Версія 1.0 підтримувала лише волосся, а не хутро чи траву. Першою грою, в якій використовувався TressFX Hair, була гра Tomb Raider 2013 року.

Версія 2.0[ред. | ред. код]

Версія 2.0 пропонує багато покращень у порівнянні з версією 1.0, наприклад:[3]

  • Безперервний рівень деталізації (LOD) призначений для покращення продуктивності шляхом динамічного коригування візуальної деталізації, коли об’єкти з підтримкою TressFX рухаються до та від точки зору гравця. Це досягається шляхом надання меншої кількості волосків, коли вони знаходяться далеко від об’єкта, але роблячи кожне волосся товщі, таким чином скорочуючи час обчислень, але зберігаючи той самий вигляд та естетику.
  • Нова функціональність для підтримки візуалізації трави та хутра на додаток до волосся.
  • Силу тяжіння можна змінити на волоссі. Наприклад, під час плавання волосся повинні бути нейтрально плавучими та не повинні ні сильно тонути, ні плавати. Щоб досягти цього, гравітацію волосся можна встановити на 0.
  • Покращена ефективність із багатьма джерелами світла та шейдерами завдяки відкладеному рендерингу.
  • Покращене самозатінення для кращої глибини та текстури волосся.
  • Ще більш надійна масштабованість між графічними процесорами з різними діапазонами продуктивності (у порівнянні з TressFX 1.0).
  • Модульний код і документація по портуванню.
  • Розтяжність тепер поважає закони фізики.

Версія 3.0[ред. | ред. код]

Першою грою, яка підтвердила використання TressFX 3.0, є Deus Ex: Mankind Divided.[4]

Версія 4.0[ред. | ред. код]

TressFX версії 4.0 була випущена 20 квітня 2018 року та принесла широкий спектр покращень, включаючи підтримку DirectX 12. Цей випуск також зосереджено на тому, щоб його набагато легше імпортувати в наявні фреймворки візуалізації.[5]

Версія 4.1[ред. | ред. код]

Ця версія була випущена 20 січня 2020 року. Вона включає деякі покращення продуктивності, але здебільшого зосереджена на кращій інтеграції в існуючі фреймворки візуалізації. Надається інтеграція в Epic Games Unreal Engine 4.22, включаючи детальну документацію.[6]

PureHair[ред. | ред. код]

PureHair — це версія TressFX, модифікована Square Enix для використання у Rise of the Tomb Raider.[7] [8]

Див. також[ред. | ред. код]

Примітки[ред. | ред. код]

  1. Release 4.1.0 — 2020.
  2. TressFX MIT License. GitHub. 5 березня 2019. Архів оригіналу за 7 січня 2020. Процитовано 8 травня 2022.
  3. TressFX Hair: Cross-platform and v2.0. Архів оригіналу за 1 жовтня 2020. Процитовано 8 травня 2022.
  4. Dawn Engine – First Slide Showcasing AMD's TressFX 3.0. Архів оригіналу за 25 січня 2021. Процитовано 8 травня 2022.
  5. TressFX 4.0 ReadeMe. GitHub. 11 серпня 2020. Архів оригіналу за 8 травня 2022. Процитовано 8 травня 2022.
  6. TressFX 4.1 ReadeMe. GitHub. 11 серпня 2020. Архів оригіналу за 8 травня 2022. Процитовано 8 травня 2022.
  7. Rise of the Tomb Raider will have improved TressFX. Архів оригіналу за 26 листопада 2020. Процитовано 8 травня 2022.
  8. Rise of the Tomb Raider uses modified version of TressFX. Архів оригіналу за 8 травня 2022. Процитовано 8 травня 2022.

Посилання[ред. | ред. код]