Canvas2D Software Renderer for the Browser

EASEL.js targets Canvas2D software rendering: explicit control over a browser rasterizer instead of WebGL abstractions.

Pipeline-first design

The renderer walks the scene, orders draw calls, shades geometry, depth-tests opaque fragments, fills scanlines, and uploads a framebuffer to the canvas. That makes the implementation usable as a library with inspectable rendering stages.

  • Scene traversal
  • Depth-aware draw ordering
  • Light baking
  • Scanline rasterization

Why not WebGL?

The tradeoff is direct CPU control over how triangles become pixels, with old-engine constraints instead of GPU feature parity.

Browse examples