# 3d-tiles-renderer/core

```js
import { ... } from '3d-tiles-renderer/core';
```

### Classes

- [B3DMLoaderBase](/tools/docs/3d-tiles-renderer/core/B3DMLoaderBase.md): Base loader for the B3DM (Batched 3D Model) tile format. Parses the B3DM binary structure and extracts the embedded GLB bytes along with batch and feature tables. Extend this class to integrate B3DM loading into a specific rendering engine.
- [BatchTable](/tools/docs/3d-tiles-renderer/core/BatchTable.md): Extends FeatureTable to provide indexed access to per-feature batch properties, as found in B3DM and PNTS tiles.
- [CMPTLoaderBase](/tools/docs/3d-tiles-renderer/core/CMPTLoaderBase.md): Base loader for the CMPT (Composite) tile format. Parses the CMPT binary structure and returns the individual inner tile buffers with their format types. Extend this class to integrate CMPT loading into a specific rendering engine.
- [DownloadPriorityQueue](/tools/docs/3d-tiles-renderer/core/DownloadPriorityQueue.md): Manages a lazily created PriorityQueue per server origin so the requests to every server are prioritized and limited independently, and a slow or saturated server can never delay the requests made to others. The items added without a url are managed as their own group.
- [FeatureTable](/tools/docs/3d-tiles-renderer/core/FeatureTable.md): Parses a 3D Tiles feature table from a binary buffer, providing access to per-feature properties stored as JSON scalars or typed binary arrays.
- [I3DMLoaderBase](/tools/docs/3d-tiles-renderer/core/I3DMLoaderBase.md): Base loader for the I3DM (Instanced 3D Model) tile format. Parses the I3DM binary structure and extracts the embedded GLB bytes (or fetches an external GLTF) along with batch and feature tables. Extend this class to integrate I3DM loading into a specific rendering engine.
- [LoaderBase](/tools/docs/3d-tiles-renderer/core/LoaderBase.md): Base class for all 3D Tiles content loaders. Handles fetching and parsing tile content.
- [LRUCache](/tools/docs/3d-tiles-renderer/core/LRUCache.md): Least-recently-used cache for managing tile content lifecycle. Tracks which items are in use each frame and evicts unused items when the cache exceeds its size limits.
- [PNTSLoaderBase](/tools/docs/3d-tiles-renderer/core/PNTSLoaderBase.md): Base loader for the PNTS (Point Cloud) tile format. Parses the PNTS binary structure and extracts the feature and batch tables containing point positions, colors, and normals. Extend this class to integrate PNTS loading into a specific rendering engine.
- [PriorityQueue](/tools/docs/3d-tiles-renderer/core/PriorityQueue.md): Priority queue for scheduling async work with a concurrency limit. Items are sorted by `priorityCallback` and dispatched up to `maxJobs` at a time.
- [Scheduler](/tools/docs/3d-tiles-renderer/core/Scheduler.md): Class used within TilesRenderer for scheduling requestAnimationFrame events and toggling between XRSession rAF and window rAF toggles.
- [TilesRendererBase](/tools/docs/3d-tiles-renderer/core/TilesRendererBase.md): Base class for 3D Tiles renderers. Manages tile loading, caching, traversal, and a plugin system for extending rendering behavior. Engine-specific renderers extend this class to add camera projection, scene management, and tile display.

### Functions

- [getUrlExtension](/tools/docs/3d-tiles-renderer/core/functions.md): Returns the file extension of the path component of a URL

### Constants

- [FAILED](/tools/docs/3d-tiles-renderer/core/constants.md): Tile content failed to load. Sorted first for eviction by the LRU cache.
- [LOADED](/tools/docs/3d-tiles-renderer/core/constants.md): Tile content has been parsed and is ready to display.
- [LOADING](/tools/docs/3d-tiles-renderer/core/constants.md): Tile content is currently downloading.
- [PARSING](/tools/docs/3d-tiles-renderer/core/constants.md): Tile content has been downloaded and is being parsed.
- [QUEUED](/tools/docs/3d-tiles-renderer/core/constants.md): Tile content is queued for download.
- [UNLOADED](/tools/docs/3d-tiles-renderer/core/constants.md): Tile content has not been requested.
- [WGS84_FLATTENING](/tools/docs/3d-tiles-renderer/core/constants.md): WGS84 ellipsoid flattening factor. See `ellipsoid flattening`.
- [WGS84_HEIGHT](/tools/docs/3d-tiles-renderer/core/constants.md): WGS84 ellipsoid height offset (difference between equatorial and polar radii) in meters.
- [WGS84_RADIUS](/tools/docs/3d-tiles-renderer/core/constants.md): WGS84 ellipsoid semi-major axis radius in meters. See the `WGS84 specification`.

### Types

- [Tile](/tools/docs/3d-tiles-renderer/core/Tile.md): A 3D Tiles tile with both spec fields (from tileset JSON) and renderer-managed state.
- [TileInternalData](/tools/docs/3d-tiles-renderer/core/TileInternalData.md): Internal renderer state added to each tile during preprocessing.
- [Tileset](/tools/docs/3d-tiles-renderer/core/Tileset.md): A loaded 3D Tiles tileset JSON object.
- [TileTraversalData](/tools/docs/3d-tiles-renderer/core/TileTraversalData.md): Per-frame traversal state updated on each tile during `TilesRendererBase.update`.
