Вузол «Розкладання» – Mapping Node

Вузол Mapping трансформує увідний вектор шляхом застосовування пересування, обертання та масштабування.

../../../_images/render_shader-nodes_vector_mapping_node.png

Вузол «Розкладання» – Mapping.

Уводи – Inputs

Уводи цього вузла є динамічними. Зокрема, увід Location доступний лише для типів векторів Texture та Point.

Вектор – Vector
Вектор, який буде трансформуватися.
Локація – Location
Величина пересування уздовж кожної з осей.
Обертання – Rotation
Величина обертання навколо кожної з осей. Порядок XYZ.
Масштаб – Scale
Величина масштабування уздовж кожної з осей.

Властивості – Properties

Тип Вектора – Vector type

Цей вузол застосовує трансформацію по-різному залежно від семантичного типу увідного вектора.

Вказування – Point

Для цього типу вектора вузол здійснює пряму трансформацію.

Трансформування координати текстури є аналогічним трансформуванню розкладки UV. Наприклад, пересування координати текстури уздовж додатної осі X призведе до того, що обчислювана текстура переміститься у напрямку від’ємної осі X, подібно, якщо б пересувалася б розкладка UV. Подібно, збільшення масштабу координати текстури призведе до **зменшення* масштабу обчислюваної текстури. Тому, трансформування координати текстури буде показуватися, як таке, що має протилежний ефект на обчислюваній текстурі.

Порядок трансформації: Масштабування –> Обертання –> Пересування, що означає:

  • Пересування переміщує увід уздовж локальної осі обертання.
  • Обертання обертає увід навколо початку простору.
  • Масштабування масштабує увід уздовж глобальної осі.
Текстура – Texture

Для цього типу вектора цей вузол здійснює інверсну трансформацію.

Інверсне трансформування координати текстури буде протилежним до типу Point, трансформуватиме саму обчислювану текстуру. Наприклад, пересування координати текстури уздовж додатної осі X призведе до того, що обчислювана текстура переміститься у напрямку додатної осі X, як можна б було очікувати. Аналогічно, збільшення масштабу координати текстури призведе до збільшення масштабу обчислюваної текстури, як можна б було очікувати.

Порядок трансформації: Пересування –> Обертання –> Масштабування, що означає:

  • Пересування переміщує увід уздовж глобальної осі.
  • Обертання обертає увід навколо вектора пересування.
  • Масштабування масштабує увід уздовж локальної осі обертання.
Вектор – Vector
Для цього типу вектора трансформація типу Point здійснюється, але з нульовим пересуванням.
Нормаль – Normal
Для цього типу вектора цей вузол здійснює інверсне переставлення трансформації та нормалізує результат. Така трансформація гарантує коректні нормалі після не-однорідного масштабування. Тому, цей тип повинен використовуватися при трансформуванні нормалей.

Виводи – Outputs

Вектор – Vector
Увідний вектор після трансформації.

Приклади – Examples

../../../_images/render_shader-nodes_vector_mapping_example.png

Приклад вузла Mapping.