MultiSprite

Используется для отрисовки мультиспрайтов. Мультиспрайт представляет собой множество спрайтов, которые рисуются в один draw call. Спрайтами в мультиспрайте можно управлять независимо друг от друга.

Для отрисовки спрайтов нужно подключить MultiSpritePlugin к рендереру.

Constructor

new MultiSprite(sprites, material)

Parameters:
Name Type Description
sprites Array.<SpriteDescriptor>

Описание спрайтов, входящих в мультиспрайт

material SpriteMaterial

Extends

Members

children :Array.<Object3D>

Каждый Object3D может включать в себя другие объекты. Позиция, поворот и масштаб дочерних объектов будет зависеть от родителя.

Inherited From:

localMatrix :mat4

Матрица определяющая поворот, масштаб и позицию объекта в локальной системе координат относительно родителя.

Inherited From:

material :SpriteMaterial

Программа отрисовки спрайта

(nullable) parent :Object3D

Родитель, т.е. объект в котором данный Object3D будет дочерним

Inherited From:

position :vec3

Позиция объекта в локальной системе координат относительно родителя

Inherited From:

quaternion :quat

Отвечает за поворот объекта

Inherited From:

scale :vec3

Масштаб объекта

Inherited From:

type :Number

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

Overrides:

visible :boolean

Будет ли объект отображаться на сцене, если нет, то все дочерние объекты тоже не будут отображаться.

Inherited From:

worldMatrix :mat4

Матрица определяющая поворот, масштаб и позицию объекта в глобальной системе координат.

Inherited From:

worldMatrixNeedsUpdate :boolean

Если true, то worldMatrix будет обновлена перед рендерингом

Inherited From:

Methods

add(object)

Добавляет дочерний объект

Parameters:
Name Type Description
object Object3D

Дочерний объект

Inherited From:

getWorldPosition()

Возвращает позицию объекта относительно глобальных координат.

Inherited From:

remove(object)

Убирает дочерний объект

Parameters:
Name Type Description
object Object3D

Дочерний объект

Inherited From:

render(state)

Вызывается рендером для подготовки и отрисовки объекта.

Parameters:
Name Type Description
state State

Текущие состояние рендера

Overrides:

setElevation(spriteIndex, value)

Устанавливает спрайту высоту

Parameters:
Name Type Description
spriteIndex Number

Индекс спрайта

value Number

Новое значение высоты

setOffset(spriteIndex, value)

Устанавливает спрайту cмещение

Parameters:
Name Type Description
spriteIndex Number

Индекс спрайта

value vec2

Новое значение смещения

setOpacity(spriteIndex, value)

Устанавливает спрайту opacity

Parameters:
Name Type Description
spriteIndex Number

Индекс спрайта

value Number

Новое значение opacity

setPosition(spriteIndex, value)

Устанавливает спрайту позицию

Parameters:
Name Type Description
spriteIndex Number

Индекс спрайта

value vec2

Новое значение позиции

setSize(spriteIndex, value)

Устанавливает спрайту размер

Parameters:
Name Type Description
spriteIndex Number

Индекс спрайта

value vec2

Новое значение размера

setUV(spriteIndex, bound)

Устанавливает спрайту новые UV-координаты

Parameters:
Name Type Description
spriteIndex Number

Индекс спрайта

bound Array

Новое значение координат

traverse(callback)

Вызывает переданный callback для себя и для каждого дочернего класса.

Parameters:
Name Type Description
callback function
Inherited From:

traverseVisible(callback)

Работает также как и Object3D#traverse, но только для объектов с visible = true

Parameters:
Name Type Description
callback function
Inherited From:

typifyForRender(renderPlugins)

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

Parameters:
Name Type Description
renderPlugins Object
Overrides:

updateLocalMatrix()

Обновляет локальную матрицу объекта. Необходимо использовать каждый раз после изменения position, scale и quaternion.

Inherited From:

updateWorldMatrix()

Обновляет глобальную матрицу объекта.

Inherited From: