Skip to content

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:49

Main tilemap class for rendering 2D tile-based maps.

Supports:

  • Multiple tile layers
  • Animated tiles
  • Chunked rendering for large maps
  • Collision data extraction
  • Object layer access (spawn points, triggers, etc.)

Follows R3F-compatible constructor pattern with optional parameters.

Three.js
const mapData = await TiledLoader.load('/maps/level1.json')
const tilemap = new TileMap2D({ data: mapData })
scene.add(tilemap)
// In update loop
tilemap.update(deltaMs)
// React Three Fiber (after extending)
extend({ TileMap2D })
function Level() {
const mapData = use(TiledLoader.load('/maps/level1.json'))
return <tileMap2D data={mapData} />
}

new TileMap2D(options?): TileMap2D

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:92

Create a new TileMap2D.

TileMap2DOptions

Optional configuration. If not provided (R3F path), the tilemap will be initialized when data is set.

TileMap2D

Group.constructor

animations: AnimationClip []

Defined in: three.js/core/Object3D:animations 

Array with object’s animation clips.

[]

Group.animations


castShadow: boolean

Defined in: three.js/core/Object3D:castShadow 

Whether the object gets rendered into shadow map.

false

Group.castShadow


children: Object3D <Object3DEventMap >[]

Defined in: three.js/core/Object3D:children 

Array with object’s children.

THREE.Object3DGroup | Group for info on manually grouping objects.

[]

Group.children


optional count?: number

Defined in: three.js/renderers/common/Backend:count 

Group.count


optional customDepthMaterial?: Material 

Defined in: three.js/core/Object3D:customDepthMaterial 

Custom depth material to be used when rendering to the depth map.

Can only be used in context of meshes. When shadow-casting with a THREE.DirectionalLight | DirectionalLight or THREE.SpotLight | SpotLight, if you are modifying vertex positions in the vertex shader you must specify a customDepthMaterial for proper shadows.

undefined

Group.customDepthMaterial


optional customDistanceMaterial?: Material 

Defined in: three.js/core/Object3D:customDistanceMaterial 

Same as customDepthMaterial, but used with THREE.Object3DPointLight | PointLight.

undefined

Group.customDistanceMaterial


frustumCulled: boolean

Defined in: three.js/core/Object3D:frustumCulled 

When this is set, it checks every frame if the object is in the frustum of the camera before rendering the object. If set to false the object gets rendered every frame even if it is not in the frustum of the camera.

true

Group.frustumCulled


readonly id: number

Defined in: three.js/core/Object3D:id 

Unique number for this Object3D  instance.

Note that ids are assigned in chronological order: 1, 2, 3, …, incrementing by one for each new object. Expects a Integer

Group.id


readonly isGroup: true

Defined in: three.js/objects/Group:isGroup 

Read-only flag to check if a given object is of type Group .

This is a constant value

true

Group.isGroup


readonly isObject3D: true

Defined in: three.js/core/Object3D:isObject3D 

Flag to check if a given object is of type Object3D .

This is a constant value

true

Group.isObject3D


layers: Layers 

Defined in: three.js/core/Object3D:layers 

The layer membership of the object.

The object is only visible if it has at least one layer in common with the THREE.Object3DCamera | Camera in use. This property can also be used to filter out unwanted objects in ray-intersection tests when using THREE.Raycaster | Raycaster.

new THREE.Layers()

Group.layers


matrix: Matrix4 

Defined in: three.js/core/Object3D:matrix 

The local transform matrix.

new THREE.Matrix4()

Group.matrix


matrixAutoUpdate: boolean

Defined in: three.js/core/Object3D:matrixAutoUpdate 

When this is set, it calculates the matrix of position, (rotation or quaternion) and scale every frame and also recalculates the matrixWorld property.

DEFAULT_MATRIX_AUTO_UPDATE - that is (true).

Group.matrixAutoUpdate


matrixWorld: Matrix4 

Defined in: three.js/core/Object3D:matrixWorld 

The global transform of the object.

If the Object3D  has no parent, then it’s identical to the local transform THREE.Object3D.matrix | .matrix.

new THREE.Matrix4()

Group.matrixWorld


matrixWorldAutoUpdate: boolean

Defined in: three.js/core/Object3D:matrixWorldAutoUpdate 

If set, then the renderer checks every frame if the object and its children need matrix updates. When it isn’t, then you have to maintain all matrices in the object and its children yourself.

DEFAULT_MATRIX_WORLD_AUTO_UPDATE - that is (true).

Group.matrixWorldAutoUpdate


matrixWorldNeedsUpdate: boolean

Defined in: three.js/core/Object3D:matrixWorldNeedsUpdate 

When this is set, it calculates the matrixWorld in that frame and resets this property to false.

false

Group.matrixWorldNeedsUpdate


readonly modelViewMatrix: Matrix4 

Defined in: three.js/core/Object3D:modelViewMatrix 

new THREE.Matrix4()

Group.modelViewMatrix


name: string

Defined in: three.js/core/Object3D:name 

Optional name of the object

(doesn’t need to be unique).

""

Group.name


readonly normalMatrix: Matrix3 

Defined in: three.js/core/Object3D:normalMatrix 

new THREE.Matrix3()

Group.normalMatrix


optional occlusionTest?: boolean

Defined in: three.js/renderers/common/Backend:occlusionTest 

Group.occlusionTest


parent: Object3D <Object3DEventMap > | null

Defined in: three.js/core/Object3D:parent 

Object’s parent in the scene graph .

An object can have at most one parent.

null

Group.parent


pivot: Vector3  | null

Defined in: three.js/core/Object3D:pivot 

The pivot point for rotation and scale transformations. When set, rotation and scale are applied around this point instead of the object’s origin.

null

Group.pivot


readonly position: Vector3 

Defined in: three.js/core/Object3D:position 

Object’s local position.

new THREE.Vector3() - that is (0, 0, 0).

Group.position


readonly quaternion: Quaternion 

Defined in: three.js/core/Object3D:quaternion 

Object’s local rotation as a THREE.Quaternion | Quaternion.

new THREE.Quaternion() - that is (0, 0, 0, 1).

Group.quaternion


receiveShadow: boolean

Defined in: three.js/core/Object3D:receiveShadow 

Whether the material receives shadows.

false

Group.receiveShadow


renderOrder: number

Defined in: three.js/core/Object3D:renderOrder 

This value allows the default rendering order of scene graph  objects to be overridden although opaque and transparent objects remain sorted independently.

When this property is set for an instance of Group , all descendants objects will be sorted and rendered together. Sorting is from lowest to highest renderOrder.

0

Group.renderOrder


readonly rotation: Euler 

Defined in: three.js/core/Object3D:rotation 

Object’s local rotation (Euler angles ), in radians.

new THREE.Euler() - that is (0, 0, 0, Euler.DEFAULT_ORDER).

Group.rotation


readonly scale: Vector3 

Defined in: three.js/core/Object3D:scale 

The object’s local scale.

new THREE.Vector3( 1, 1, 1 )

Group.scale


static: boolean

Defined in: three.js/core/Object3D:static 

Whether the 3D object is supposed to be static or not. If set to true, it means the 3D object is not going to be changed after the initial renderer. This includes geometry and material settings. A static 3D object can be processed by the renderer slightly faster since certain state checks can be bypassed.

Only relevant in context of WebGPURenderer.

false

Group.static


readonly type: string

Defined in: three.js/core/Object3D:type 

A Read-only string to check this object type.

This can be used to find a specific type of Object3D in a scene. Sub-classes will update this value.

Object3D

Group.type


up: Vector3 

Defined in: three.js/core/Object3D:up 

This is used by the lookAt  method, for example, to determine the orientation of the result.

Object3D.DEFAULT_UP - that is (0, 1, 0).

Group.up


userData: Record<string, any>

Defined in: three.js/core/Object3D:userData 

An object that can be used to store custom data about the Object3D .

It should not hold references to functions as these will not be cloned.

{}

Group.userData


uuid: string

Defined in: three.js/core/Object3D:uuid 

UUID  of this object instance.

This gets automatically assigned and shouldn’t be edited.

Group.uuid


visible: boolean

Defined in: three.js/core/Object3D:visible 

Object gets rendered if true.

true

Group.visible


static DEFAULT_MATRIX_AUTO_UPDATE: boolean

Defined in: three.js/core/Object3D:DEFAULT_MATRIX_AUTO_UPDATE 

The default setting for matrixAutoUpdate for newly created Object3Ds.

true

Group.DEFAULT_MATRIX_AUTO_UPDATE


static DEFAULT_MATRIX_WORLD_AUTO_UPDATE: boolean

Defined in: three.js/core/Object3D:DEFAULT_MATRIX_WORLD_AUTO_UPDATE 

The default setting for matrixWorldAutoUpdate for newly created Object3Ds.

true

Group.DEFAULT_MATRIX_WORLD_AUTO_UPDATE


static DEFAULT_UP: Vector3 

Defined in: three.js/core/Object3D:DEFAULT_UP 

The default up direction for objects, also used as the default position for THREE.DirectionalLight | DirectionalLight, THREE.HemisphereLight | HemisphereLight and THREE.Spotlight | Spotlight (which creates lights shining from the top down).

new THREE.Vector3( 0, 1, 0)

Group.DEFAULT_UP

get bounds(): Box3 

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:574

Get map bounds.

Box3 


get chunkSize(): number

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:133

Get/set chunk size in tiles (default: 512). Each layer is split into chunks of chunkSize×chunkSize tiles for frustum culling. Maps smaller than chunkSize naturally use a single chunk per layer.

number

set chunkSize(value): void

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:137

number

void


get data(): TileMapData | null

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:108

Get the tilemap data.

TileMapData | null

set data(value): void

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:115

Set the tilemap data and rebuild the map.

TileMapData | null

void


get enableCollision(): boolean

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:150

Get/set collision extraction flag.

boolean

set enableCollision(value): void

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:154

boolean

void


get heightInPixels(): number

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:180

number


get heightInTiles(): number

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:168

number


get layerCount(): number

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:508

Get layer count.

number


get lit(): boolean

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:406

boolean

set lit(value): void

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:410

boolean

void


get receiveShadows(): boolean

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:416

boolean

set receiveShadows(value): void

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:420

boolean

void


get tileHeight(): number

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:174

number


get tileWidth(): number

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:171

number


get totalChunkCount(): number

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:595

Get total chunk count across all layers (equals total draw calls for tiles).

number


get totalTileCount(): number

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:602

Get total tile count across all layers.

number


get widthInPixels(): number

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:177

number


get widthInTiles(): number

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:165

number

add(…object): this

Defined in: three.js/core/Object3D:add 

Adds another Object3D  as child of this Object3D .

Object3D <Object3DEventMap >[]

this

An arbitrary number of objects may be added Any current parent on an object passed in here will be removed, since an Object3D  can have at most one parent.

  • attach 
  • THREE.Group | Group for info on manually grouping objects.

Group.add


addEffect(effect): this

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:438

Register a MaterialEffect on all tile layer materials. Use this to add channel providers (e.g. NormalMapProvider) so tilemaps participate in the lighting pipeline’s channel system.

MaterialEffect

this

<tileMap2D data={mapData}>
<normalMapProvider attach={attachEffect} />
</tileMap2D>

addEventListener<T>(type, listener): void

Defined in: three.js/core/EventDispatcher:addEventListener 

Adds a listener to an event type.

T extends keyof Object3DEventMap 

T

The type of event to listen to.

EventListener <Object3DEventMap [T], T, TileMap2D>

The function that gets called when the event is fired.

void

Group.addEventListener


applyMatrix4(matrix): void

Defined in: three.js/core/Object3D:applyMatrix4 

Applies the matrix transform to the object and updates the object’s position, rotation and scale.

Matrix4 

void

Group.applyMatrix4


applyQuaternion(quaternion): this

Defined in: three.js/core/Object3D:applyQuaternion 

Applies the rotation represented by the quaternion to the object.

Quaternion 

this

Group.applyQuaternion


attach(object): this

Defined in: three.js/core/Object3D:attach 

Adds a Object3D  as a child of this, while maintaining the object’s world transform.

Object3D 

this

Note: This method does not support scene graphs having non-uniformly-scaled nodes(s).

add 

Group.attach


clear(): this

Defined in: three.js/core/Object3D:clear 

Removes all child objects.

this

Group.clear


clone(recursive?): this

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:626

Clone for devtools/serialization compatibility. Returns a Group containing cloned child layers for visual inspection.

boolean

this

Group.clone


copy(object, recursive?): this

Defined in: three.js/core/Object3D:copy 

Copies the given object into this object.

Object3D 

boolean

If set to true, descendants of the object are copied next to the existing ones. If set to false, descendants are left unchanged. Default is true.

this

Event listeners and user-defined callbacks (.onAfterRender and .onBeforeRender) are not copied.

Group.copy


dispatchEvent<T>(event): void

Defined in: three.js/core/EventDispatcher:dispatchEvent 

Fire an event type.

T extends keyof Object3DEventMap 

BaseEvent <T> & Object3DEventMap [T]

The event that gets fired.

void

Group.dispatchEvent


dispose(): void

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:661

Dispose of all resources.

void


getCollisionShapes(): readonly CollisionShape[]

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:567

Get collision shapes.

readonly CollisionShape[]


getLayer(name): TileLayer | undefined

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:487

Get tile layer by name.

string

TileLayer | undefined


getLayerAt(index): TileLayer | undefined

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:494

Get tile layer by index.

number

TileLayer | undefined


getLayerMaterial(name): Sprite2DMaterial | undefined

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:610

Get the Sprite2DMaterial for a tile layer by name. Use this to apply TSL effects or lighting to specific layers.

string

Sprite2DMaterial | undefined


getLayerMaterialAt(index): Sprite2DMaterial | undefined

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:618

Get the Sprite2DMaterial for a tile layer by index. Use this to apply TSL effects or lighting to specific layers.

number

Sprite2DMaterial | undefined


getLayers(): readonly TileLayer[]

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:501

Get all tile layers.

readonly TileLayer[]


getObjectById(id): Object3D <Object3DEventMap > | undefined

Defined in: three.js/core/Object3D:getObjectById 

Searches through an object and its children, starting with the object itself, and returns the first with a matching id.

number

Unique number of the object instance. Expects a Integer

Object3D <Object3DEventMap > | undefined

Note that ids are assigned in chronological order: 1, 2, 3, …, incrementing by one for each new object.

id

Group.getObjectById


getObjectByName(name): Object3D <Object3DEventMap > | undefined

Defined in: three.js/core/Object3D:getObjectByName 

Searches through an object and its children, starting with the object itself, and returns the first with a matching name.

string

String to match to the children’s Object3D.name property.

Object3D <Object3DEventMap > | undefined

Note that for most objects the name is an empty string by default You will have to set it manually to make use of this method.

Group.getObjectByName


getObjectByProperty(name, value): Object3D <Object3DEventMap > | undefined

Defined in: three.js/core/Object3D:getObjectByProperty 

Searches through an object and its children, starting with the object itself, and returns the first with a property that matches the value given.

string

the property name to search for.

any

value of the given property.

Object3D <Object3DEventMap > | undefined

Group.getObjectByProperty


getObjectLayer(name): ObjectLayerData | undefined

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:515

Get object layer by name.

string

ObjectLayerData | undefined


getObjectsByProperty(name, value, optionalTarget?): Object3D <Object3DEventMap >[]

Defined in: three.js/core/Object3D:getObjectsByProperty 

Searches through an object and its children, starting with the object itself, and returns the first with a property that matches the value given.

string

The property name to search for.

any

Value of the given property.

Object3D <Object3DEventMap >[]

target to set the result. Otherwise a new Array is instantiated. If set, you must clear this array prior to each call (i.e., array.length = 0;).

Object3D <Object3DEventMap >[]

Group.getObjectsByProperty


getObjectsByType(type): TileMapObject[]

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:522

Get all objects of a specific type.

string

TileMapObject[]


getProperty<T>(name): T | undefined

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:588

Get custom property from map data.

T

string

T | undefined


getTileAtWorld(worldX, worldY, layerIndex?): number

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:537

Get tile GID at world position.

number

number

number = 0

number


getTileset(name): Tileset | undefined

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:581

Get tileset by name.

string

Tileset | undefined


getWorldDirection(target): Vector3 

Defined in: three.js/core/Object3D:getWorldDirection 

Returns a vector representing the direction of object’s positive z-axis in world space.

Vector3 

The result will be copied into this Vector3.

Vector3 

Group.getWorldDirection


getWorldPosition(target): Vector3 

Defined in: three.js/core/Object3D:getWorldPosition 

Returns a vector representing the position of the object in world space.

Vector3 

The result will be copied into this Vector3.

Vector3 

Group.getWorldPosition


getWorldQuaternion(target): Quaternion 

Defined in: three.js/core/Object3D:getWorldQuaternion 

Returns a quaternion representing the rotation of the object in world space.

Quaternion 

The result will be copied into this Quaternion.

Quaternion 

Group.getWorldQuaternion


getWorldScale(target): Vector3 

Defined in: three.js/core/Object3D:getWorldScale 

Returns a vector of the scaling factors applied to the object for each axis in world space.

Vector3 

The result will be copied into this Vector3.

Vector3 

Group.getWorldScale


hasEventListener<T>(type, listener): boolean

Defined in: three.js/core/EventDispatcher:hasEventListener 

Checks if listener is added to an event type.

T extends keyof Object3DEventMap 

T

The type of event to listen to.

EventListener <Object3DEventMap [T], T, TileMap2D>

The function that gets called when the event is fired.

boolean

Group.hasEventListener


localToWorld(vector): Vector3 

Defined in: three.js/core/Object3D:localToWorld 

Converts the vector from this object’s local space to world space.

Vector3 

A vector representing a position in this object’s local space.

Vector3 

Group.localToWorld


lookAt(vector): void

Defined in: three.js/core/Object3D:lookAt 

Rotates the object to face a point in world space.

Vector3 

A vector representing a position in world space to look at.

void

This method does not support objects having non-uniformly-scaled parent(s).

Group.lookAt

lookAt(x, y, z): void

Defined in: three.js/core/Object3D:lookAt 

Rotates the object to face a point in world space.

number

Expects a Float

number

Expects a Float

number

Expects a Float

void

This method does not support objects having non-uniformly-scaled parent(s).

Group.lookAt


markOccluders(types, layerIndex?): void

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:460

Mark tiles as shadow casters based on object layer data. Typically called with IntGrid-derived collision objects.

string[]

Object types to treat as occluders (e.g. [‘collision’, ‘torch_switch’])

number = 0

Which tile layer to mark (default: 0)

void


onAfterRender(renderer, scene, camera, geometry, material, group): void

Defined in: three.js/core/Object3D:onAfterRender 

An optional callback that is executed immediately after a 3D object is rendered.

WebGLRenderer 

Scene 

Camera 

BufferGeometry 

Material 

Group 

void

This function is called with the following parameters: renderer, scene, camera, geometry, material, group. Please notice that this callback is only executed for renderable 3D objects. Meaning 3D objects which define their visual appearance with geometries and materials like instances of Mesh, Line, Points or Sprite. Instances of Object3D , Group  or Bone are not renderable and thus this callback is not executed for such objects.

Group.onAfterRender


onAfterShadow(renderer, scene, camera, shadowCamera, geometry, depthMaterial, group): void

Defined in: three.js/core/Object3D:onAfterShadow 

An optional callback that is executed immediately after a 3D object is rendered to a shadow map.

WebGLRenderer 

Scene 

Camera 

Camera 

BufferGeometry 

Material 

Group 

void

This function is called with the following parameters: renderer, scene, camera, shadowCamera, geometry, depthMaterial, group. Please notice that this callback is only executed for renderable 3D objects. Meaning 3D objects which define their visual appearance with geometries and materials like instances of Mesh, Line, Points or Sprite. Instances of Object3D , Group  or Bone are not renderable and thus this callback is not executed for such objects.

Group.onAfterShadow


onBeforeRender(renderer, scene, camera, geometry, material, group): void

Defined in: three.js/core/Object3D:onBeforeRender 

An optional callback that is executed immediately before a 3D object is rendered.

WebGLRenderer 

Scene 

Camera 

BufferGeometry 

Material 

Group 

void

This function is called with the following parameters: renderer, scene, camera, geometry, material, group. Please notice that this callback is only executed for renderable 3D objects. Meaning 3D objects which define their visual appearance with geometries and materials like instances of Mesh, Line, Points or Sprite. Instances of Object3D , Group  or Bone are not renderable and thus this callback is not executed for such objects.

Group.onBeforeRender


onBeforeShadow(renderer, scene, camera, shadowCamera, geometry, depthMaterial, group): void

Defined in: three.js/core/Object3D:onBeforeShadow 

An optional callback that is executed immediately before a 3D object is rendered to a shadow map.

WebGLRenderer 

Scene 

Camera 

Camera 

BufferGeometry 

Material 

Group 

void

This function is called with the following parameters: renderer, scene, camera, shadowCamera, geometry, depthMaterial, group. Please notice that this callback is only executed for renderable 3D objects. Meaning 3D objects which define their visual appearance with geometries and materials like instances of Mesh, Line, Points or Sprite. Instances of Object3D , Group  or Bone are not renderable and thus this callback is not executed for such objects.

Group.onBeforeShadow


raycast(raycaster, intersects): void

Defined in: three.js/core/Object3D:raycast 

Abstract (empty) method to get intersections between a casted ray and this object

Raycaster 

Intersection <Object3D <Object3DEventMap >>[]

void

Subclasses such as THREE.Mesh | Mesh, THREE.Line | Line, and THREE.Points | Points implement this method in order to use raycasting.

THREE.Raycaster | Raycaster

() => {}

Group.raycast


remove(…object): this

Defined in: three.js/core/Object3D:remove 

Removes a Object3D  as child of this Object3D .

Object3D <Object3DEventMap >[]

this

An arbitrary number of objects may be removed.

THREE.Group | Group for info on manually grouping objects.

Group.remove


removeEffect(_effect): this

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:449

MaterialEffect

this


removeEventListener<T>(type, listener): void

Defined in: three.js/core/EventDispatcher:removeEventListener 

Removes a listener from an event type.

T extends keyof Object3DEventMap 

T

The type of the listener that gets removed.

EventListener <Object3DEventMap [T], T, TileMap2D>

The listener function that gets removed.

void

Group.removeEventListener


removeFromParent(): this

Defined in: three.js/core/Object3D:removeFromParent 

Removes this object from its current parent.

this

Group.removeFromParent


rotateOnAxis(axis, angle): this

Defined in: three.js/core/Object3D:rotateOnAxis 

Rotate an object along an axis in object space.

Vector3 

A normalized vector in object space.

number

The angle in radians. Expects a Float

this

The axis is assumed to be normalized.

Group.rotateOnAxis


rotateOnWorldAxis(axis, angle): this

Defined in: three.js/core/Object3D:rotateOnWorldAxis 

Rotate an object along an axis in world space.

Vector3 

A normalized vector in world space.

number

The angle in radians. Expects a Float

this

The axis is assumed to be normalized Method Assumes no rotated parent.

Group.rotateOnWorldAxis


rotateX(angle): this

Defined in: three.js/core/Object3D:rotateX 

Rotates the object around x axis in local space.

number

this

Group.rotateX


rotateY(angle): this

Defined in: three.js/core/Object3D:rotateY 

Rotates the object around y axis in local space.

number

this

Group.rotateY


rotateZ(angle): this

Defined in: three.js/core/Object3D:rotateZ 

Rotates the object around z axis in local space.

number

this

Group.rotateZ


setRotationFromAxisAngle(axis, angle): void

Defined in: three.js/core/Object3D:setRotationFromAxisAngle 

Calls THREE.Quaternion.setFromAxisAngle | setFromAxisAngle(axis, angle) on the .quaternion.

Vector3 

A normalized vector in object space.

number

Angle in radians. Expects a Float

void

Group.setRotationFromAxisAngle


setRotationFromEuler(euler): void

Defined in: three.js/core/Object3D:setRotationFromEuler 

Calls THREE.Quaternion.setFromEuler | setFromEuler(euler) on the .quaternion.

Euler 

Euler angle specifying rotation amount.

void

Group.setRotationFromEuler


setRotationFromMatrix(m): void

Defined in: three.js/core/Object3D:setRotationFromMatrix 

Calls THREE.Quaternion.setFromRotationMatrix | setFromRotationMatrix(m) on the .quaternion.

Matrix4 

Rotate the quaternion by the rotation component of the matrix.

void

Note that this assumes that the upper 3x3 of m is a pure rotation matrix (i.e, unscaled).

Group.setRotationFromMatrix


setRotationFromQuaternion(q): void

Defined in: three.js/core/Object3D:setRotationFromQuaternion 

Copy the given THREE.Quaternion | Quaternion into .quaternion.

Quaternion 

Normalized Quaternion.

void

Group.setRotationFromQuaternion


tileToWorld(tileX, tileY): object

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:557

Convert tile coordinates to world position (center of tile).

number

number

object

x: number

y: number


toJSON(meta?): Object3DJSON 

Defined in: three.js/core/Object3D:toJSON 

Convert the object to three.js JSON Object/Scene format .

JSONMeta 

Object containing metadata such as materials, textures or images for the object.

Object3DJSON 

Group.toJSON


translateOnAxis(axis, distance): this

Defined in: three.js/core/Object3D:translateOnAxis 

Translate an object by distance along an axis in object space

Vector3 

A normalized vector in object space.

number

The distance to translate. Expects a Float

this

The axis is assumed to be normalized.

Group.translateOnAxis


translateX(distance): this

Defined in: three.js/core/Object3D:translateX 

Translates object along x axis in object space by distance units.

number

Expects a Float

this

Group.translateX


translateY(distance): this

Defined in: three.js/core/Object3D:translateY 

Translates object along y axis in object space by distance units.

number

Expects a Float

this

Group.translateY


translateZ(distance): this

Defined in: three.js/core/Object3D:translateZ 

Translates object along z axis in object space by distance units.

number

Expects a Float

this

Group.translateZ


traverse(callback): void

Defined in: three.js/core/Object3D:traverse 

Executes the callback on this object and all descendants.

(object) => any

A function with as first argument an Object3D  object.

void

Note: Modifying the scene graph inside the callback is discouraged.

Group.traverse


traverseAncestors(callback): void

Defined in: three.js/core/Object3D:traverseAncestors 

Executes the callback on all ancestors.

(object) => any

A function with as first argument an Object3D  object.

void

Note: Modifying the scene graph inside the callback is discouraged.

Group.traverseAncestors


traverseVisible(callback): void

Defined in: three.js/core/Object3D:traverseVisible 

Like traverse, but the callback will only be executed for visible objects

(object) => any

A function with as first argument an Object3D  object.

void

Descendants of invisible objects are not traversed. Note: Modifying the scene graph inside the callback is discouraged.

Group.traverseVisible


update(deltaMs): void

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:478

Update animated tiles. Call this in your animation loop with delta time in milliseconds.

number

void


updateMatrix(): void

Defined in: three.js/core/Object3D:updateMatrix 

Updates local transform.

void

Group.updateMatrix


updateMatrixWorld(force?): void

Defined in: three.js/core/Object3D:updateMatrixWorld 

Updates the global transform of the object. And will update the object descendants if .matrixWorldNeedsUpdate is set to true or if the force parameter is set to true.

boolean

A boolean that can be used to bypass .matrixWorldAutoUpdate, to recalculate the world matrix of the object and descendants on the current frame. Useful if you cannot wait for the renderer to update it on the next frame, assuming .matrixWorldAutoUpdate set to true.

void

Group.updateMatrixWorld


updateWorldMatrix(updateParents, updateChildren): void

Defined in: three.js/core/Object3D:updateWorldMatrix 

Updates the global transform of the object.

boolean

Recursively updates global transform of ancestors.

boolean

Recursively updates global transform of descendants.

void

Group.updateWorldMatrix


worldToLocal(vector): Vector3 

Defined in: three.js/core/Object3D:worldToLocal 

Converts the vector from world space to this object’s local space.

Vector3 

A vector representing a position in world space.

Vector3 

Group.worldToLocal


worldToTile(worldX, worldY): object

Defined in: packages/three-flatland/src/tilemap/TileMap2D.ts:547

Convert world position to tile coordinates (in Tiled’s Y-down system).

number

number

object

x: number

y: number