blob: f82a47e16a796bcc9eef8e0506603064e1f2acb2 [file]
// Copyright 2025 the Vello Authors
// SPDX-License-Identifier: Apache-2.0 OR MIT
//! Provides renderer backends which handle GPU resource management and executes draw operations.
//!
//! ## Renderer Backends
//!
//! - `wgpu` contains the default renderer backend, leveraging `wgpu`.
//! - `webgl` contains a WebGL2 backend if the `webgl` feature is active.
pub(crate) mod common;
#[cfg(feature = "webgl")]
mod webgl;
#[cfg(feature = "wgpu")]
mod wgpu;
pub use common::{ClearSettings, Config, GpuStrip, RenderSize, TargetInit};
#[cfg(feature = "webgl")]
pub use webgl::{
AtlasTextureInfo, IncompatibleContextReason, ShaderCompilationStats, WebGlAtlasWriter,
WebGlContextOperation, WebGlDataTransferOperation, WebGlError, WebGlOperation, WebGlRenderer,
WebGlRendererInit, WebGlRendererInitStatus, WebGlResourceKind, WebGlShaderInterfaceOperation,
WebGlShaderProgramOperation, WebGlShaderStage, WebGlTextureBindings,
WebGlTextureWithDimensions,
};
#[cfg(all(feature = "webgl", feature = "probe"))]
pub use webgl::{
WebGlProbeOperation,
probe::{WebGlPendingProbe, WebGlProbeError, WebGlProbeStatus},
};
#[cfg(feature = "wgpu")]
pub use wgpu::{AtlasWriter, RenderTargetConfig, Renderer, TextureBinding, TextureBindings};
#[cfg(all(feature = "wgpu", feature = "probe"))]
pub use wgpu::{WgpuPendingProbe, WgpuProbeError, WgpuProbeStatus};