Material

MeshToonMaterial

Материал, реализующий мультипликационное затенение.

Примеры

materials / variations / toon

Конструктор

MeshToonMaterial(parameters : Object)

parameters — (опционально) объект с одним или несколькими свойствами, определяющими внешний вид материала. Сюда можно передать любое свойство материала (включая любое свойство, унаследованное от Material).

Исключением является свойство color, которое может быть передано в виде шестнадцатеричной строки и по умолчанию имеет значение 0xffffff (белый). Color.set(color) вызывается внутренне.

Свойства

Общие свойства см. в базовом классе Material.

.alphaMap : Texture

Альфа-карта - это черно-белая текстура, которая контролирует непрозрачность поверхности. (черный: полностью прозрачный; белый: полностью непрозрачный). По умолчанию - null.

Используется только цвет текстуры, игнорируя альфа-канал, если он существует. Для текстур RGB и RGBA рендерер WebGL будет использовать зеленый канал при выборке этой текстуры из-за дополнительного бита точности, предоставляемого для зеленого цвета в DXT-сжатом и несжатом форматах RGB 565. Текстуры только с яркостью и яркость/альфа также будут работать, как и положено.

.aoMap : Texture

Красный канал этой текстуры используется в качестве карты окклюзии окружающего пространства. По умолчанию - null. Для карты окклюзии требуется второй набор UVs.

.aoMapIntensity : Float

Интенсивность эффекта окклюзии окружающей среды. По умолчанию - 1. Ноль - эффект окклюзии отсутствует.

.bumpMap : Texture

Текстура для создания карты неровностей. Черные и белые значения отображают воспринимаемую глубину относительно освещения. Фактически не влияет на геометрию объекта, только на освещение. Если определена карта нормалей, то она будет проигнорирована.

.bumpScale : Float

Насколько сильно карта неровностей влияет на материал. Типичные диапазоны 0-1. По умолчанию - 1.

.color : Color

Color материала, по умолчанию установлен на белый (0xffffffff).

.displacementMap : Texture

Карта смещения влияет на положение вершин меша. В отличие от других карт, которые влияют только на свет и тень материала, смещенные вершины могут отбрасывать тени, блокировать другие объекты и действовать как настоящая геометрия. Текстура смещения - это изображение, в котором значение каждого пикселя (белый - самый высокий) сопоставляется с вершинами сетки и изменяет их положение.

.displacementScale : Float

Насколько сильно карта смещения влияет на меш (где черный цвет - нет смещения, а белый - максимальное смещение). Без установленной карты смещения это значение не применяется. По умолчанию - 1.

.displacementBias : Float

Смещение значений карты смещения на вершинах меша. Без установленной карты смещения это значение не применяется. По умолчанию равно 0.

.emissive : Color

Излучающий (световой) цвет материала, по сути, сплошной цвет, на который не влияет другое освещение. По умолчанию - черный.

.emissiveMap : Texture

Устанавливает карту излучения (свечения). По умолчанию - null. Цвет эмиссионной карты модулируется цветом эмиссии и интенсивностью эмиссии. Если у вас есть эмиссионная карта, обязательно установите цвет излучения на какой-либо другой, но не черный.

.emissiveIntensity : Float

Интенсивность излучаемого света. Модулирует цвет излучения. По умолчанию - 1.

.gradientMap : Texture

Карта градиента для мультипликационного затенения. Необходимо установить Texture.minFilter и Texture.magFilter в значение v3d.NearestFilter при использовании этого типа текстуры. По умолчанию это null.

.lightMap : Texture

Карта света. По умолчанию равно null. Для карты света требуется второй набор UVs.

.lightMapIntensity : Float

Интенсивность запеченного света. По умолчанию - 1.

.map : Texture

Карта цвета. По умолчанию равно null. Цвет карты текстуры модулируется диффузным .color.

.morphNormals : Boolean

Определяет, использует ли материал morphNormals. Установите значение true, чтобы передавать атрибуты morphNormals из Geometry в шейдер. По умолчанию false.

.morphTargets : Boolean

Определяет, использует ли материал morphTargets. По умолчанию - false.

.normalMap : Texture

Текстура для создания карты нормалей. Значения RGB влияют на нормаль поверхности для каждого фрагмента пикселя и изменяют способ освещения. Карты нормалей не изменяют фактическую форму поверхности, только освещение. В случае, если материал имеет карту нормалей, созданную с использованием левосторонней конвенции, компонент y normalScale должен быть отрицательным, чтобы компенсировать разную ориентацию рук.

.normalMapType : Integer

Тип карты нормалей.

Варианты: v3d.TangentSpaceNormalMap (по умолчанию) и v3d.ObjectSpaceNormalMap.

.normalScale : Vector2

Насколько сильно карта нормалей влияет на материал. Типичные диапазоны - 0-1. По умолчанию это Vector2, установленный на (1,1).

.skinning : Boolean

Определяет, использует ли материал скиннинг. По умолчанию - false.

.wireframe : Boolean

Рендерит геометрию в виде вайрфрейма. По умолчанию false (т.е. рендеринг в виде плоских полигонов).

.wireframeLinecap : String

Определяет внешний вид концов линии. Возможные значения "butt", "round" и "square". По умолчанию 'round'.

Это соответствует свойству 2D Canvas lineCap и игнорируется рендерером WebGL.

.wireframeLinejoin : String

Определяет внешний вид стыков линий. Возможные значения "round", "bevel" и "miter". По умолчанию 'round'.

Это соответствует свойству 2D Canvas lineJoin и игнорируется рендерером WebGL.

.wireframeLinewidth : Float

Контроль толщины вайрфрейма. По умолчанию 1.

В связи с ограничениями OpenGL Core Profile с WebGL рендерером на большинстве платформ ширина линии будет всегда равна 1, независимо от установленного значения.

Методы

Общие методы см. в базовом классе Material.

Исходный файл

О том как получить исходный код этого модуля читайте тут.