Entity

Применение #

Класс Entity представляет собой объект в сцене. Альтернатива в других движках - Object3D в THREE.js, или GameObject в Unity.

Чтобы создать пустой объект, создайте новый объект с классом Entity.

import { Entity } from "creator"

const empty = new Entity()

Добавление компонентов #

Чтобы расширить функционал объекта, используются компоненты. Компоненты можно указать при создании объекта, а также добавить к уже созданному объекту.

import { Entity, Mesh } from "creator"

const mesh = Mesh.createCube() // mesh - это компонент, который мы добавляем к объекту

const cube = new Entity(mesh)

Сигнатура класса Entity #

class Entity {
name: string;
visible: boolean;
addComponent(component)
}

Методы #

addComponent()

Добавление компонента в Entity

hasComponent()

Проверка наличия компонента в Entity

addData(data: object)

Добавление кастомного объекта в Entity

getChild(index: number): Entity | null

Получение дочернего элемента Entity по индексу

setParent(entity: Entity | null, worldPositionStays?: boolean)

Установить для Entity родительский элемент

traverse(callback: (entity: Entity))

Просмотр иерархии Entity

clone()

Копировании Entity

lookAt(point: vec3, mode?: "z" | "-z" | "x" | "-x" | "y" | "-y", ortho?: vec3)

Поворот объекта так, чтобы он смотрел в заданные координаты пространства


Свойства #

name

Имя объекта

visible

Показать/скрыть элемент

matrix

Локальная матрица преобразования

worldMatrix

Матрица преобразования мира

worldMatrixInverse

Обратная матрица мира

children

Дочерние элементы Entity