Overview
luma.gl is packaged and published as a suite of composable npm modules, so that applications can choose what functionality they need.
Module | Usage | Description |
---|---|---|
@luma.gl/core | Required | The "Abstract" Device API (implemented by both the webgpu and webgl modules). |
@luma.gl/webgl | Required * | Device adapter implemented using the WebGPU API. Enables creation of WebGPU resources |
@luma.gl/webgpu | Required * | Device adapter implemented using the WebGL API. Enables creation of WebGL resources. |
@luma.gl/engine | Recommended | A set of WebGPU/WebGL independent core 3D engine style classes built on top of @luma.gl/core . |
@luma.gl/shadertools | Recommended | System for modularizing and composing shader code, shader module system,, shader modules. |
@luma.gl/gltf | Optional | glTF scenegraph loading and instantiation etc. |
@luma.gl/test-utils | Optional | Test setups, in particular support for rendering and comparing images. |
* At least one backend, either WebGL or WebGPU, must be installed to enable GPU resource creation.
luma.gl also publishes a legacy moduls that should be avoided in new applications.
Legacy Module | Status | Description | Replacement |
---|---|---|---|
@luma.gl/constants | Deprecated | WebGL constants. | No longer used in luma.gl v9. |