Принципове Волосся BSDF – Principled Hair BSDF¶
Cycles Only
«Принципове Волосся BSDF» – Principled Hair BSDF – це фізично-базований, легкий у використанні, шейдер для рендерингу волосся та хутра.
Порада
Реалістичне волосся повинно мати мінімальну мінливість між кожним пасмом. Цей шейдер дозволяє це робити, вказуючи два значення, «Випадковий Колір» – 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
Specify how much the glints are smoothed in the direction of the hair shaft. Too low values will smoothen the hair to the point of looking almost metallic, making glints look like Fireflies; while setting it too high will result in a Lambertian look.
- Радіальна Шорсткість – 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¶
- Color Parametrization
Цей шейдер надає три різних способи або параметризації для забарвлення пасм волосся.
- Безпосереднє забарвлювання – 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. Цей режим призначений в основному для технічних користувачів, котрі хочуть використовувати коефіцієнти з літератури без будь-якого виду перетворення.
Виводи – 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