blob: f279252323ca5ec5adaa2eb325cca733e9cc5142 [file] [edit]
// 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, 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, TextureBindings};