mirror of
https://github.com/visgl/luma.gl.git
synced 2025-12-08 17:36:19 +00:00
RFCs and Roadmaps (luma.gl)
Implementation of non-trivial new luma.gl features should typically be started off with the creation of an RFC (Request for Comments). For more details see RFC Guidelines .
Roadmaps
Writeups of directions in major areas of interest
| Roadmap | Description |
|---|---|
| Shadertools | shader module system roadmap |
| GPGPU | gpgpu roadmap |
| Effects | Gradually build out our shader stack |
| Scenegraph and Loaders | Improved scenegraph and loader support |
Longer-Terms RFCs
These are early ideas not yet associated with any release
| RFC | Author | Status | Description |
|---|---|---|---|
| WIP/Draft | |||
| Automatic Shader Module Injection | @ibgreen | Draft | Replace functions and inject attributes in shaders |
| Automatic Shader Module Injection | @ibgreen | Draft | Automatically recompile shader modules when "props" are updated. |
| Automatic Shader Module Injection | @ibgreen | Draft | Automatically inject code required by a shader module |
| Dist Size Reduction | @ibgreen | Draft | Reduce luma.gl impact on app bundle size |
v7.1 RFCs
| RFC | Author | Status | Description |
|---|---|---|---|
| Hiearchical Animation Timeline | @tsherif | Implemented | Timeline management system for animations |
| Animation Key Frame Management | @tsherif | Approved | Key frame management system for animations |
| Shader Module Code Injection | @tsherif | Approved | Structure code injection mechanism for shader modules |
v7.0 RFCs
| RFC | Author | Status | Description |
|---|---|---|---|
| luma.gl Module Structure | @ibgreen | Partially Implemented | Outlines module structure to be used in monorepo transition. Implementeation continues from v6.2. |
| glTF2 support | @ibgreen | Draft | Proposes a multi-step approach to full glTF2 support. |
| Framebuffer/Texture API cleanup | @ibgreen | Draft | API changes to improve tree-shakeability of the big Texture and Framebuffer classes. |
| Off-Thread (aka Off-Screen) Rendering | @pessimistress | Experimental | Use the new Off-Screen API to enable WebGL to run in a separate thread. Still requires browser flag. |
v6.2 RFCs
| RFC | Author | Status | Description |
|---|---|---|---|
| luma.gl Module Structure | @ibgreen | Partially Implemented | Outlines module structure to be used in monorepo transition. |
| Floating Point Textures in Transforms | @1chandu | Review | Floating Point Texture Support in Transform class |
| WebGL1 Support for Transforms | @1chandu | Review | Use render to texture and float packing to emulate transform feedback under WebGL1 |
v6.1 RFCs
| RFC | Author | Status | Description |
|---|---|---|---|
| Multipass Rendering | @ibgreen | Implemented | Multipass rendering system for postprocessing effects and advanced rendering |
| New Loaders Module | @ibgreen | Implemented | New loaders.gl submodule collecting framework-agnostic, thread-capable 3D format loaders. Note: The loaders have been moved to a separate repository |
v6.0 RFCs
| RFC | Author | Status | Description |
|---|---|---|---|
| Centralize Attribute Management in VertexArray | @ibgreen | Implemented | Move attribute management to VertexArray |
| Portable GLSL 3.00 Shader Modules | @ibgreen | Implemented | "Transpile" GLSL 3.00 to 1.00 and vice versa. |
| Shader Fragment Injection | @ibgreen | Implemented | Enables short fragments of code to be injected into existing shaders |
v5.2 RFCs
| RFC | Author | Status | Description |
|---|---|---|---|
| New Transform Class | @1chandu | Implemented | Simpler API for TransformFeedback |
v5.0 RFCs
Release Focus: Address any WebGL2 issues from 4.0.
| RFC | Author | Status | Description |
|---|---|---|---|
| Break out Math Module | @ibgreen | Implemented | Break out luma.gl math module |
v4.0 RFCs
Version 4.0 focused on:
- Exposing the complete WebGL2 API
- Adding WebGL state management
- Shader module support
- Completing documentation
v3.0 RFCs
Version 3.0 focused on improving luma.gl documentation