ComplexMeshMaterial

Более сложный материал для Mesh.

Geometry меша использующего этот материал должна содержать следующие буферы:

  1. position - координаты вершин
  2. color - диффузная составляющая цвета в RGB для каждой из вершин, на неё влияет освещение
  3. emissive - фоновая составляющая цвета в RGB, на неё не влияет освещение

Если материалу задана текстура, то также должен быть доступны буферы:

  1. texture - 2х мерные координаты сопоставляющие координаты грани к координатам текстуры
  2. textureEnable - будет ли использоваться текстура для данной вершины, принимает два значаения: 0 - нет, 1 - да

Этот материал требует подключения CommonPlugin и TransparentPlugin к рендереру.

Constructor

new ComplexMeshMaterial()

Extends

Members

opacity :Number

Прозрачность объекта отрисованного с помощью данной материала

Inherited From:

type :Number

Используется для обозначения типа материала

Methods

define(type, value)

Добавляет definitions в код шейдеров. Все добавления должны быть сделаны до первой инициализации.

Parameters:
Name Type Description
type String
value Number | String
Inherited From:

disable(gl)

Отключает шейдерную программу

Parameters:
Name Type Description
gl WebGLRenderingContext
Inherited From:

enable(state)

Инициализирует шейдерную программу

Parameters:
Name Type Description
state State
Inherited From:

getTexture() → (nullable) {Texture}

Возвращает текущую текстуру

Returns:
Type
Texture

setTexture(texture)

Задаёт текстуру материалу

Parameters:
Name Type Description
texture Texture

typifyForRender(renderPlugins, object)

Вызывается объектом использующую данный материал, чтобы определить к какому типу рендера принадлежит объект. Самое простое разделение: на прозрачные и нет.

Parameters:
Name Type Description
renderPlugins Object
object Object3D
Inherited From: