Changes in version 0.8.0 - Added a separate vignette gate for live WebGL widgets across coverage, renderer capability/showcase, real-data, boids, surface/mesh, and temporal trajectory articles so CRAN source builds, CRAN checks, and CI can show examples without executing browser-side widget chunks. - Kept rich local and pkgdown vignette rendering opt-in through GGWEBGL_EVAL_COVERAGE_VIGNETTE=true plus GGWEBGL_EVAL_LIVE_WIDGETS=true. - Delegated boids display defaults to the updated boids4R::as_ggwebgl_spec() adapter so species-aware velocity colours, current-boid emphasis, recent trails, and obstacle context rings are preserved by the optional integration. - Split the live boids4R animation article into an overview plus smaller 2D, 3D, and custom-workflow pages so generated pkgdown artifacts remain below repository hosting file-size limits. Changes in version 0.7.0 - Added ggwebgl_interactions() as the structured interaction contract for hover, click, brush/lasso, camera, and Shiny event behavior. - Added renderer-owned hover/click picking coverage for additional primitive types, including vectors, raster cells, and structured surfaces. - Unified Shiny interaction event emission for hover, selection, brush, camera, and timeline/time state while preserving existing timeline update APIs. - Added a CRAN-safe Shiny interaction demo that exercises hover, click, brush, camera, and time events without custom JavaScript. - Added compact point transport and deterministic LOD metadata for large point scenes, plus manual dense-scene smoke helpers that record payload and browser diagnostics without making fixed performance statements. - Added neutral scene-type benchmark helpers and public examples for dense embeddings, trajectory timelines, surface/mesh rendering, Shiny interaction, and static-versus-WebGL workflow comparison. - Added surface/mesh and interactive benchmark vignettes built from small deterministic examples and manual metric schemas. Changes in version 0.6.0 - Added XGeoRTR and boids4R to Suggests as optional integrations while keeping them out of hard dependencies. - Restored the richer boids4R animation and swarm-art vignette plus the matching htmlwidget example, using installed suggested packages instead of sibling-repository loading. - Restored live XGeoRTR bridge vignette behavior with neutral renderer/backend ownership wording and guarded example code. - Kept shapViz3D as a guarded optional ecosystem example without adding it to package dependencies. - Updated dependency and bridge tests to allow XGeoRTR and boids4R in Suggests while continuing to reject hard dependencies on optional ecosystem packages. Changes in version 0.5.0 - Froze the experimental renderer API around structured ggwebgl_view(), ggwebgl_selection(), and ggwebgl_material() contracts. - Extended vector layers to support 3D z/zend coordinates while preserving renderer-owned ids, frame/time metadata, and browser selection behavior. - Added distinct orbit and trackball camera control paths with normalized rotation-based camera state. - Upgraded mesh and surface payloads with generated normals, Lambert material metadata, picking ids, wireframe/culling controls, and GPU payload caching hooks. - Expanded the interaction-frame benchmark artifact schema so fixed frame-rate performance statements require device, browser, GPU, commit, primitive-count, and artifact metadata. Changes in version 0.3.0 - Added exported ggwebgl_magnify_region() in R/magnify-region.R, with panel and inset modes driven by an exact data-coordinate rectangle. - Added experimental vector-arrow rendering through geom_vector_webgl() and ggwebgl_layer_vectors(), using renderer-ready shafts and triangle arrowheads without backend-specific semantics. - Added experimental brush and lasso interaction modes that emit selected primitive ids through Shiny inputs or optional JavaScript callbacks. - Added experimental timeline controls with frame/time filtering for primitive layers plus play, scrub, speed, and reset UI controls. - Added experimental opt-in 3D camera state, 3D point/line support, indexed mesh payloads, geom_mesh_webgl(), geom_surface_webgl(), ggwebgl_layer_mesh(), and ggwebgl_layer_surface(). - Added a renderer-generic future-work gallery and contract tests covering the new vector, selection, timeline, camera, mesh, and surface paths. - Added an interaction-frame benchmark schema for frame-rate statements. Fixed performance numbers remain future-facing until generated benchmark artifacts exist for a named target machine. Changes in version 0.2.0 - Promoted the package from the long-running development scaffold to the 0.2.0 release line. - Added large-scene demo support: persistent point buffers for stable large point-cloud interaction, deterministic count-aware density splats, generic hover labels for point primitives, and a reproducible renderer gallery. - Added generic downstream adapter helpers for renderer-ready point, line, and raster primitive specs, including exported ggwebgl_layer_*() constructors and ggwebgl_spec(). - Added package-owned static export surfaces through snapshot_ggwebgl() and compose_ggwebgl_figure(), so publication-style PNG/JPEG captures and simple figure composition can be driven from the package API instead of ad hoc scripts. - Added project evidence documentation and machine-readable evidence summaries for internal release validation. - Added vignette-local figure copies for website articles that need images without referencing files outside pkgdown's allowed article asset paths. - Tightened the browser-backed static export path around dedicated chromote browser ownership, lighter examples, and explicit optional dependency declarations for export and vignette tooling. - Fixed pkgdown/htmlwidget layout containment by restoring the widget CSS dependency and adding inline canvas-stage safeguards, preventing WebGL canvases from stacking at the top of article pages. Changes in version 0.1.0 - Expanded the core renderer beyond the initial scaffold with reusable showcase helpers, manual htmlwidget and Shiny smoke tests, and a stronger pkgdown-facing documentation surface. - Implemented and stabilized the main point shader modes: default, density_splat, trajectory_age, and trajectory_age_glow. - Added hover-based sample inspection on top of the existing pan and zoom interactions. - Added texture-backed raster rendering for geom_raster_webgl(). - Added fixed-scale facet_wrap() and facet_grid() support through a panel-aware render specification and panel-local interaction state. - Added packaged real-data evidence examples covering raster fields, storm trajectories, and dense embeddings. - Added a reproducible evaluation suite against ggplot2 and plotly, including machine-readable metrics and benchmark figure scripts under inst/benchmarks/. - Froze the XGeoRTR/ggWebGL renderer boundary in RENDERER_CONTRACT.md and added the first as_ggwebgl_spec.xgeo_state() adapter plus renderer contract tests. Changes in version 0.0.0.9000 - Reset package metadata and top-level documentation from the copied scaffold to the ggWebGL package identity. - Rewrote the package README, citation, and pkgdown configuration around the intended ggplot2 plus WebGL rendering workflow and companion-package split. - Removed imported carryover benchmark content from the copied package tree. - Added the first real ggplot_webgl() renderer path for point and line layers, backed by a minimal WebGL htmlwidget. - Added the initial showcase vignette and gallery, including dense latent-space, diffusion-trajectory, phase-portrait, and optimization-path examples. - Added reusable standard and high_detail showcase presets for the gallery and demo surfaces.