Crate onedrop_renderer

Crate onedrop_renderer 

Source
Expand description

§onedrop-renderer

GPU rendering pipeline for Milkdrop visualizations using wgpu.

This crate provides a complete rendering engine for Milkdrop presets, including waveform rendering, motion effects, and shader-based transformations.

Re-exports§

pub use blend_renderer::BlendRenderer;
pub use blur_pipeline::BlurPipeline;
pub use border::BORDER_VERTICES_PER_RING;
pub use border::BorderRenderer;
pub use border::BorderUniform;
pub use chain_textures::ChainTextures;
pub use comp_pipeline::CompPipeline;
pub use config::AudioLevels;
pub use config::BorderParams;
pub use config::FeedbackParams;
pub use config::MeshQuality;
pub use config::MeshSize;
pub use config::MotionParams;
pub use config::MotionVectorParams;
pub use config::RenderConfig;
pub use config::RenderState;
pub use config::TextureFormat;
pub use config::WaveParams;
pub use custom_shape::CustomShapeBatch;
pub use custom_shape::CustomShapeInstance;
pub use custom_shape::CustomShapeRenderer;
pub use custom_shape::MAX_CUSTOM_SHAPE_INSTANCES;
pub use custom_shape::MAX_SHAPE_SIDES;
pub use custom_shape::ShapeFlags;
pub use custom_wave::CustomWaveBatch;
pub use custom_wave::CustomWaveRenderer;
pub use custom_wave::CustomWaveVertex;
pub use custom_wave::MAX_CUSTOM_WAVE_VERTICES;
pub use error::RenderError;
pub use error::Result;
pub use final_blend::BlendUniforms;
pub use final_blend::FinalBlendPipeline;
pub use gpu_context::GpuContext;
pub use motion_vector::MAX_MOTION_VECTOR_SEGMENTS;
pub use motion_vector::MotionVectorRenderer;
pub use per_pixel_pipeline::PerPixelPipeline;
pub use per_pixel_pipeline::PixelVarsUniform;
pub use per_vertex_pipeline::PerVertexPipeline;
pub use per_vertex_pipeline::VertexVarsUniform;
pub use render_chain::RenderChain;
pub use renderer::MilkRenderer;
pub use sprite_pipeline::MAX_ACTIVE_SPRITES;
pub use sprite_pipeline::SpriteBlendKind;
pub use sprite_pipeline::SpriteDrawCmd;
pub use sprite_pipeline::SpriteFrame;
pub use sprite_pipeline::SpritePipeline;
pub use sprite_pipeline::SpritePool;
pub use sprite_pipeline::SpriteTexture;
pub use sprite_pipeline::build_sprite_uniform;
pub use sprite_pipeline::default_sprite_dirs;
pub use sprite_pipeline::pick_first_existing;
pub use text_pipeline::TEXT_ATLAS_SIZE;
pub use text_pipeline::TextAtlas;
pub use text_pipeline::TextFrame;
pub use text_pipeline::TextPipeline;
pub use text_pipeline::TextQuadVertex;
pub use texture_pool::TexturePool;
pub use texture_pool::UserTexture;
pub use texture_pool::default_texture_dirs;
pub use warp_mesh::WarpMesh;
pub use warp_mesh::WarpMeshVertex;
pub use warp_pipeline::WarpPipeline;
pub use warp_pipeline::WarpVertex;
pub use waveform::WavePoint;
pub use waveform::WaveformMode;
pub use waveform::WaveformRenderer;

Modules§

blend_renderer
Blend renderer for double-preset visualization.
blur_pipeline
Blur-pyramid GPU pipeline.
border
Outer + inner border pass.
chain_textures
Per-chain feedback textures.
comp_pipeline
Comp pass GPU pipeline.
config
Configuration for the renderer.
custom_shape
Custom-shape (shapecode_N) pass.
custom_wave
Custom-wave (wavecode_N) pass.
error
Error types for the onedrop-renderer crate.
final_blend
Final blend pipeline: composites primary + secondary chain outputs into the renderer’s display texture.
gpu_context
GPU context management.
motion_vector
Motion-vector grid pass.
noise
Procedural noise textures for the noise texture pack.
per_pixel_pipeline
Per-pixel shader execution pipeline
per_vertex_pipeline
Per-vertex shader execution pipeline
pipeline_helpers 🔒
Small helpers shared by the renderer’s overlay pipelines (waveform, custom waves, custom shapes, borders, motion vectors).
render_chain
Per-preset rendering pipeline bundle.
renderer
Main renderer assembling the per-frame Milkdrop pipeline.
sprite_pipeline
Sprite (§5) GPU pipeline.
text_pipeline
Text overlay (§6) GPU pipeline.
texture_pool
User-loaded texture pool for the comp pass.
user_warp_pipeline
User-shader path for the warp pass.
warp_mesh
Warp mesh — regular grid of vertices for the per-vertex warp pass.
warp_pipeline
Warp pass GPU pipeline.
waveform
Waveform pass — MD2 modes 0..7 wired into the renderer.