My JS WebGL Engine: The Ultimate 2025 Developer Roadmap
Discover the ambitious 2025 roadmap for AstraJS, my open-source WebGL engine. Explore plans for deferred rendering, physics, a visual editor, and WebGPU.
Alexei Volkov
Lead graphics engineer and creator of the open-source AstraJS WebGL engine.
My JS WebGL Engine: The Ultimate 2025 Developer Roadmap
Remember that first "Hello, Triangle"? The moment a splash of color appeared on a black canvas, a tiny universe born from your code? For me, that spark never faded. It grew into a full-blown obsession: building a 3D engine for the web, from scratch, with nothing but JavaScript and the raw power of WebGL.
That obsession is AstraJS, my open-source JavaScript WebGL engine. It began as a humble learning project, a way to truly understand the graphics pipeline. Over the last year, it has blossomed into a capable, lightweight renderer. But 2024 was about laying the foundation. 2025 is about building the skyscraper.
This is the year we evolve AstraJS from a "rendering library" into a true "creation engine." This roadmap is my public commitment, my blueprint for the future, and an open invitation for you to follow along—or even join the adventure. Let’s dive in.
The Current State of Play
Before we look forward, let's ground ourselves in the present. As of early 2025, AstraJS is functional but minimalist. Here’s a quick rundown of its core features:
- Forward Renderer: A classic, single-pass forward rendering pipeline. It's fast for simple scenes but struggles with many dynamic lights.
- PBR Materials: A solid implementation of Physically-Based Rendering for realistic materials (metallic-roughness workflow).
- glTF Loading: Robust support for loading 3D models and scenes from the standard
.gltf
and.glb
formats. - Simple Scene Graph: A basic tree structure for managing objects, transformations, and hierarchies.
It works, it’s performant for what it does, and it's a fantastic educational tool. But to build rich, interactive experiences, we need more firepower.
The 2025 Vision: The Four Pillars
The 2025 roadmap is structured around four key pillars, each building upon the last to create a holistic and powerful engine. We're moving from low-level rendering to high-level creation.
Q1: The Bedrock - Core Rendering & Performance
The first quarter is all about strengthening the foundation. A powerful engine needs a state-of-the-art rendering core. The goal is to handle more complex and dynamic scenes with grace.
Primary Goal: Implement a Deferred Shading Pipeline.
Moving from forward to deferred rendering is a monumental step. By decoupling scene geometry from lighting calculations, we can efficiently render hundreds, or even thousands, of dynamic lights. This involves rendering scene information (position, normals, albedo) to multiple render targets (the G-buffer) in a first pass, then applying lighting in a second pass. This is the key to unlocking visually rich, dynamic environments.
Other Q1 goals include:
- Optimized PBR Workflow: Enhancing the material system with support for advanced properties like clear coat and sheen, for more realistic surfaces like car paint and fabric.
- WebGL2 By Default: Fully embracing WebGL2 features like Uniform Buffer Objects (UBOs) for efficient data transfer and Vertex Array Objects (VAOs) for reduced API overhead.
Q2: The Spark of Life - Physics & Animation
Static scenes are beautiful, but dynamic worlds are captivating. Q2 is dedicated to breathing life into our creations through physics and advanced animation.
Primary Goal: Integrate a High-Performance Physics Engine.
Rather than reinventing the wheel, I've chosen to integrate Rapier.js. Why? It's incredibly fast (powered by Rust compiled to WebAssembly), feature-rich, and maintained by the brilliant folks at Dimforge. This integration will bring rigid body dynamics, collision detection, and joints to AstraJS, allowing developers to build interactive simulations and games.
We'll also tackle animation:
- Robust Skeletal Animation: Moving beyond simple object transforms to a proper skeletal animation system. This means smooth, complex character animations loaded directly from glTF files.
- Animation Blending (Stretch Goal): Implementing state machines and blending to allow smooth transitions between different animations (e.g., from walking to running).
Q3: The Creator's Workshop - Tooling & Editor
This is perhaps the most ambitious and transformative part of the roadmap. An engine is only as powerful as the tools that let you use it. Q3 is about empowering creators.
Primary Goal: Develop the AstraJS Editor v1.0.
Imagine a simplified, web-based version of the Unity or Godot editor. That's the vision for the AstraJS Editor. It will be a visual interface built with modern web tech (likely Svelte or Vue) that allows you to:
- Visually manage your scene hierarchy.
- Select objects and manipulate them with a 3D gizmo.
- Inspect and edit component properties (transforms, materials, physics bodies).
- Drag-and-drop assets directly into the editor.
This lowers the barrier to entry from "you must be a graphics programmer" to "you can be a creator."
Q4: The Quantum Leap - Advanced Features & Community
With a solid rendering core, physics, and tooling in place, Q4 is for looking to the future and building the ecosystem around AstraJS.
Primary Goal: Begin Experimental WebGPU Backend.
WebGL has been a phenomenal workhorse, but WebGPU is the future of graphics on the web. It offers a more modern API, better performance, and access to compute shaders. This quarter will be dedicated to building a parallel, experimental WebGPU renderer. It won't replace the WebGL one in 2025, but it will lay the critical groundwork for the engine's long-term viability.
We'll also focus on growth:
- Documentation Overhaul: Creating a dedicated documentation website with tutorials, API references, and best-practice guides.
- Community Building: Launching a Discord server for users and contributors to share their work, ask questions, and shape the future of the engine.
The Big Picture: AstraJS 2025 vs. 2026
To put it all in perspective, here’s a high-level comparison of where the engine is today versus where we aim to be at the start of 2026.
Feature | State (January 2025) | Vision (January 2026) |
---|---|---|
Rendering Path | Basic Forward Rendering | Deferred Shading (Default), Advanced PBR |
Physics | None | Integrated Rigid Body Physics (Rapier.js) |
Animation | Basic Transforms | Full Skeletal Animation System |
Tooling | Code-Only | Web-Based Visual Editor v1.0 |
Target Platform | WebGL | WebGL 2 (Primary), WebGPU (Experimental) |
Join the Journey
Building a 3D engine is a marathon, not a sprint. This roadmap is ambitious, and there will undoubtedly be challenges along the way. But the potential to create a powerful, open, and accessible tool for building the 3D web is a powerful motivator.
This isn't just my project; it's an invitation. Whether you're a seasoned graphics engineer, a web developer curious about 3D, or an artist looking for new tools, there's a place for you in this journey. I'll be posting regular updates, sharing my struggles and successes, and open-sourcing every line of code.
The future of the web is three-dimensional, and it's up to us to build it. Let's get to work.
You can follow the AstraJS project on GitHub and get real-time updates by following me on Twitter.