webGpu Subsystem
Low-level GPU acceleration layer mapping WebGL and WebGPU contexts directly to the native NeolyxOS NXRender compositor.
Internal Modules
gpu_device.hpp
Physical device abstraction, queue management, and memory allocations.
webgl_context.hpp
Implementation of the HTMLCanvasElement WebGL 1.0/2.0 rendering contexts.
gpu_pipeline.hpp
Compute and render pipeline states, shader module binding, and execution commands.
gpu_texture.hpp
Texture sampling, image loading formats, and offscreen framebuffer backing stores.
gpu_buffer.hpp
VBOs, IBOs, Uniform structures, and staging buffer uploads mapping to GPU memory.
canvas_renderer.hpp
Specialized 2D canvas drawing paths utilizing hardware-accelerated vectors.
Execution Hierarchy
ZepraBrowser (DOM)
│
▼
┌────────────────────────────────────────────────────────┐
│ Context Initializer │
│ canvas.getContext('webgl2') / getContext('webgpu') │
└───────────────────────────┬────────────────────────────┘
│ Bindings
┌───────────────────────────▼────────────────────────────┐
│ webGpu Subsystem │
│ │
│ ┌─────────────┐ ┌───────────┐ │
│ │ Commands │─────▶ Queue List ─────▶│ Pipelines │ │
│ └─────────────┘ └─────┬─────┘ │
│ │ │
└──────────────────────────────────────────────│─────────┘
▼ Native Render API
┌──────────────────────────────────────────────▼─────────┐
│ NXRender / OpenGL / DX12 │
└────────────────────────────────────────────────────────┘