Crate astrelis_render

Crate astrelis_render 

Source
Expand description

Astrelis Render - Modular rendering framework for Astrelis

This crate provides:

  • Graphics context management
  • Window rendering contexts
  • Frame and render pass management
  • Compute pass management
  • Framebuffer abstraction for offscreen rendering
  • Render target abstraction (Surface/Framebuffer)
  • Blend mode presets for common scenarios
  • GPU feature detection and management
  • Indirect draw buffer support for GPU-driven rendering
  • Texture blitting for fullscreen quad rendering
  • Sprite sheet support for animations
  • Low-level extensible Renderer for WGPU resource management
  • Building blocks for higher-level renderers (TextRenderer, SceneRenderer, etc.)

Re-exports§

pub use wgpu;

Structs§

BlitOptions
Options for configuring the blit renderer.
BlitRenderer
A renderer for blitting textures to the screen.
Color
Color represented as RGBA (0.0 - 1.0).
ComputePass
A compute pass wrapper that automatically returns the encoder to the frame context.
ComputePassBuilder
Builder for creating compute passes.
ComputePipelineBuilder
Builder for creating a compute pipeline with common defaults.
DispatchIndirect
Indirect dispatch command.
DrawIndexedIndirect
Indirect draw command for indexed geometry.
DrawIndirect
Indirect draw command for non-indexed geometry.
FrameContext
Context for a single frame of rendering.
FrameStats
Statistics for a rendered frame.
Framebuffer
An offscreen render target with optional depth and MSAA attachments.
FramebufferBuilder
Builder for creating framebuffers with optional attachments.
GpuFeatures
GPU features that can be requested or required.
GraphicsContext
A globally shared graphics context.
GraphicsContextDescriptor
Descriptor for configuring graphics context creation.
IndirectBuffer
A type-safe GPU buffer for indirect draw commands.
PendingReconfigure
RenderPass
A render pass wrapper that automatically returns the encoder to the frame context.
RenderPassBuilder
Builder for creating render passes.
RenderPipelineBuilder
Builder for creating a render pipeline with common defaults.
RenderableWindow
A renderable window that combines a window with a rendering context.
Renderer
Low-level extensible renderer that simplifies WGPU resource management.
SpriteAnimation
Animation state for cycling through sprite sheet frames.
SpriteSheet
A sprite sheet containing uniformly-sized sprites in a grid layout.
SpriteSheetDescriptor
Descriptor for creating a sprite sheet.
SpriteUV
UV coordinates for a sprite (normalized 0-1 range).
Surface
Surface texture and view for rendering.
TextureUploader
Helper to upload texture data from CPU to GPU.
Viewport
Viewport definition for rendering.
WindowContext
Window rendering context that manages a surface and its configuration.
WindowContextDescriptor
Descriptor for configuring a window’s rendering context.

Enums§

BlendMode
Predefined blend modes for common use cases.
ClearOp
Clear operation for a render pass.
DepthClearOp
Depth clear operation for a render pass.
FeatureSupportResult
Result of checking feature support.
RenderTarget
A render target that can be either a window surface or an offscreen framebuffer.

Constants§

DEPTH_FORMAT
Depth format used by framebuffers.

Traits§

ComputePassExt
Helper trait for creating compute passes from FrameContext.
IndirectCommand
Marker trait for indirect draw command types.
RenderPassExt
Helper trait for creating render passes with common configurations.
RenderPassIndirectExt
Extension trait for render passes to use indirect buffers.
RenderPassMultiDrawIndirectExt
Extension trait for multi-draw indirect operations.