Crate fugu

source · []
Expand description

A simple cross-platform rendering library for Rust.

Docs Crates.io License

Goals

  • Simple, modern, and safe API
  • Fast compile times with clean builds
  • Portability; only depends on core, alloc, and the rendering backend
  • Transparent implementation; internal abstractions are minimal and easy to grok or hack

Non-Goals

  • Windowing or context creation (use glutin, sdl2, etc.)
  • “Advanced” functionality (use wgpu or Vulkan/Metal/DirectX/… directly)
  • Shader translation (use naga or SPIRV-cross)
  • GPU-side safety guarantees; the API is safe Rust but can still produce crashes or UB

Structs

A blend equation.

A GPU buffer.

The layout of a buffer.

A rendering context.

A GPU image.

An image uniform.

A rendering pipeline.

A shader.

A shader uniform.

A vertex attribute.

Enums

A blending factor.

A blending operation.

Kinds of a GPU buffer.

Usage hints for a GPU buffer.

Filter modes for a GPU image.

Formats of a GPU image.

Wrapping modes for a GPU image.

A rendering pass action.

Formats of a shader uniform.

Formats of a vertex attribute.

Step functions for a vertex attribute.