Skip to content

Changelog

This project follows Keep a Changelog and Semantic Versioning.

View the full changelog on GitHub

  • Light overlap: one material + dirty uniform sync; no per-frame shader rebuild.
  • Overlap and shader cost: cached mesh overrides; no per-frame scene traverse.
  • Light Overlap (lightComplexity): analytic counter for point, spot, and rect lights.
  • Foliage and lights demo scenes for overlap diagnostics.
  • Overlap (overdraw) restored to the additive contributor pass.
  • Removed measured-overdraw experiment and internal planning artifacts from the published surface.
  • Overlap view renders in WebGPU (measured counter pass produced a blank framebuffer).
  • Measured Overlap (overdraw): contributor layer counts via depth prepass + blend counter; click-to-sample in R3F.
  • Estimated Light Overlap (lightComplexity): analytic light counter for point/spot/rect lights.
  • Optional overdrawVisual additive approx source; demo Lights tab (?scene=lights).
  • Overlap & Light Diagnostics guide.
  • Overlap label Measured Overlap; no scale: 2.5. Legend copy for overlap and light views.
  • Published ESM gzip: 30 kB.
  • Premultiplied counter blend, readback Y-flip, renderer state restore, spotlight axis, alphaHash counter participation.
  • README and docs: headless setup first, R3F setup second; removed duplicated quick-start content.
  • Quick Start guide covers install and integration with and without React Three Fiber.
  • Headless viewport renderer for multi-pane scissor rendering.
  • requiresViewportRuntime() helper to choose compositor vs viewport path.
  • Split compose and viewport runtime; public API unchanged.
  • Published ESM gzip: 26 kB.
  • Breakdown label region helpers and canvas-centered HUD positioning for DOM overlays.
  • Configurable pane divider styling (lineWidth, edgeColor, coreColor).
  • Repo social capture preset (?capture=social) and pnpm capture:social script.
  • Diagonal/breakdown viewport labels align with compositor bands on WebGPU screenUV.
  • showLeva={false} on DebugViewLayer skips Leva for capture flows.
  • Built-in Shader Complexity label and legend copy; breakdown tags center on band midpoints.
  • Headless WebGPU runtime: createDebugPipelineRuntime, createDebugViewportRenderer, createDebugPipelineRuntimeKey, and readHeatmapCostFromCanvas.
  • DebugViewsOptions, layout/pane helpers, and Native Runtime guide.
  • /r3f is a thin adapter over the canonical core runtime; public R3F API unchanged.
  • DebugViewLeva, mountDebugViewLeva, and DEBUG_VIEW_LEVA_THEME on threejs-debug-view/r3f.
  • showLeva on DebugViewLayer (default true).
  • Unit tests for the batteries-included R3F export surface.
  • DebugViewLayer mounts the Leva control panel as documented; no separate <Leva /> import on the default path.
  • Leva portals to document.body so SVG UI never enters the R3F reconciler.
  • Repo demo dogfoods threejs-debug-view/r3f; standalone DebugControls removed.
  • Docs describe body-portal Leva, showLeva, and custom placement.
  • Library build externalizes react-dom (~22 kB published gzip).
  • Package logo and Starlight R3F guide.
  • README and docs homepage lead with batteries-included positioning.
  • Replaced broken Bundlephobia badge with a measured library gzip badge.
  • Click-to-sample shader cost inspector in the demo.
  • showEnabledControl on DebugViewLayer.
  • pack:check guard for npm tarball contents.
  • Shader cost label shortened to Shader Cost.
  • Separate overlap and shader-cost legend UI.
  • Release workflow publishes to GitHub Packages.