Принципове Волосся BSDF – Principled Hair BSDF¶
Cycles Only
«Принципове Волосся BSDF» – Principled Hair BSDF – це фізично-базований, легкий у використанні, шейдер для рендерингу волосся та хутра.
Забарвлення Волосся – Coloring Hair¶
Цей відтінювач надає три різних способи або параметризації для забарвлення пасм волосся.
- Пряме забарвлення – Direct coloring
- Виберіть бажаний колір RGB і цей шейдер знайде приблизний необхідний коефіцієнт поглинання (ниже).
- Концентрація меланіну – Melanin concentration
Цей режим визначає колір, як кількість та пропорцію пігментів, які звичайно знаходяться у волоссі та хутрі, eumelanin (переважає у коричнево-чорному волоссі) та pheomelanin (червоне волосся). Кількість визначається уводом «Меланін» – Melanin, а пропорція між ними – уводом «Червоність Меланіну» – Melanin Redness. Підвищення концентрацій затемнює волосся (наступні види волосся є при значення Melanin Redness \(1\)):
- Біле – White (Melanin \(0\)),
- Біляве – Blonde (Melanin \(0.25\))
- Червонувате – Reddish (Melanin \(0.5\))
- Коричневе – Brown (Melanin \(0.75\))
- Чорне – Black (Melanin \(1\))
Додатково, уводи «Підбарвлення» – Tint дозволяють підбарвлювати волосся бажаним кольором.
- Коефіцієнт поглинання – Absorption coefficient
- Визначає коефіцієнт затухання \(\sigma_{a}\), застосовуваний за законом Бугера-Ламберта-Бера – Beer-Lambert law. Цей режим призначений в основному для технічних користувачів, котрі хочуть використовувати коефіцієнти з літератури без будь-якого виду перетворення.
Властивості Рандомізації – Randomizing Properties¶
Реалістичне волосся повинно мати мінімальну мінливість між кожним пасмом. Цей шейдер дозволяє це робити, вказуючи два значення, «Випадковий Колір» – Random Color та «Випадкова Шорсткість» – Random Roughness, які перерозкладають значення Melanin/Roughness на діапазон \(Color/Roughness \pm Randomization\%\).
Уводи – Inputs¶
- Колір – Color
Колір RGB для пасм. Використовується лише у Прямому забарвленні.
Підказка
Вибраний колір конвертується у коефіцієнт поглинання за наступною формулою (секція 4.2 з [CBTB16]):
\[\sigma_{a} = \frac{\ln(Color)} {\left(5.969 - 0.215\beta_{N} + 2.532\beta_{N}^{2} - 10.73\beta_{N}^{3} + 5.574\beta_{N}^{4} + 0.245\beta_{N}^{5}\right)^{2}}\]де \(\beta_{N}\) є радіальною шорсткістю волосся після застосування рандомізації (якщо вказано).
- Меланін – Melanin
Абсолютна кількість пігменту. Діапазон \([0, 1]\) еквівалентний \([0\%, 100\%]\).
Підказка
Це прямолінійне розкладання по основоположній експоненціальній функції:
\[melanin\_qty = -\ln(\max(1.0 - Melanin, 0.0001))\]
- Червоність Меланіну – Melanin Redness
Пропорція pheomelanin до eumelanin. Діапазон \([0, 1]\) еквівалентний \([0\%, 100\%]\).
Підказка
Формулою цієї пропорції є: \(eumelanin = Melanin*(1.0-MelaninRedness)\), \(pheomelanin = Melanin*MelaninRedness\).
Результатні кількості конвертуються (після рандомізації, якщо вказано) у концентрацію поглинання через наступну формулу (секція 6.1 з [EFHLA11], наладнано для діапазону \([0, 1]\)):
\[\begin{split}\sigma_{a} = eumelanin * \left[\begin{matrix} 0.506 \\ 0.841 \\ 1.653 \\ \end{matrix}\right] + pheomelanin * \left[\begin{matrix} 0.343 \\ 0.733 \\ 1.924 \\ \end{matrix}\right]\end{split}\]
- Підбарвлення – Tint
Колір, використовуваний для підбарвлення волосся після застосування пігменту меланіну. Він не є суб’єктом для рандомізації. Це можна вимкнути, задавши цей колір як білий.
Підказка
Це конвертується через розкладання значень вищезазначеного уводу Color та додання коефіцієнта поглинання концентрації меланіну.
- Коефіцієнт поглинання – Absorption coefficient
- Коефіцієнт затухання \(\sigma\).
- Шорсткість – Roughness
- Визначає, наскільки відблиски згладжуються у напрямку стрижня волосинки. Надто низькі значення згладжуватимуть волосся так, що воно виглядатиме майже металічним із відблисками на вигляд, як світлячки; тоді як задання їх надто високими буде давати матовий вигляд згідно Lambertian.
- Радіальна Шорсткість – Radial Roughness
Визначає, наскільки відблиски згладжуються у напрямку тангенса волосинки. Надто низькі значення будуть концентрувати відблиск; тоді як задання їх надто високими дасть поширення освітлення по ширині пасма.
Підказка
Математично, це параметр розкладається на фактор масштабу логістичного розподілу \(s\) (секція 4.1 з [CBTB16]).
- Покров – Coat
- Симулює блискучий покров хутра, скорочуючи Roughness до заданого фактора лише для першого відскоку освітлення (розсіяння). Діапазон \([0, 1]\) еквівалент скороченню \([0\%, 100\%]\) від оригінального Roughness.
- Показник Заломлення – IOR
- Показник заломлення – Index of refraction (IOR), що визначає, наскільки промінь змінює напрямок. При 1.0 промені проходитимуть прямо крізь, ніби через прозорий матеріал; вищі значення дають більше заломлення. Стандартне значення – \(1.55\).
- Зсув – Offset
- Відхиляє відблиск волосся, збільшуючи кут лусочок кутикули волосся відносно стрижня волосинки. Людське волосся, зазвичай, має низькі значення.
- Випадковий Колір – Random Color
Для кожного пасма варіює концентрацію меланіну за \(RandomFactor\). Діапазон \([0, 1]\) еквівалент \([0\%, 100\%]\) початкової концентрації меланіну.
Підказка
Ця концентрація меланіну множиться на \(randomFactor\), де \(randomFactor = 1.0 + 2.0*(Random - 0.5) * RandomColor\).
- Випадкова Шорсткість – Random Roughness
Для кожного пасма варіює обидва значення Roughness за \(RandomFactor\). Діапазон \([0, 1]\) еквівалент \([0\%, 100\%]\) початкових значень шорсткості.
Підказка
Застосовувана формула є такою ж, як і для Random Color.
- Випадково – Random
- Випадкове джерело чисел. Якщо жоден із вузлів тут не під’єднується, то це автоматично примірникується за допомогою значення, отриманого з .
Властивості – Properties¶
- Параметризація – Parametrization
- Дає на вибір один із трьох режимів забарвлення, описаних вище.
Виводи – Outputs¶
- BSDF
- Стандартний вивід відтінювача.
Орієнтири – References¶
Цей шейдер є імплементацією праці авторів Chiang et al. [CBTB16], яка була використана у фільмі від Disney, «Zootopia»®.
[CBTB16] | (1, 2, 3) Chiang, M. J. , Bitterli, B. , Tappan, C. and Burley, B. (2016), A Practical and Controllable Hair and Fur Model for Production Path Tracing. Computer Graphics Forum, 35: 275-283. doi:10.1111/cgf.12830 |
[EFHLA11] | d’Eon, E. , Francois, G. , Hill, M. , Letteri, J. and Aubry, J. (2011), An Energy‐Conserving Hair Reflectance Model. Computer Graphics Forum, 30: 1181-1187. doi:10.1111/j.1467-8659.2011.01976.x |