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§

BlendState
A blend equation.
Buffer
A GPU buffer.
BufferLayout
The layout of a buffer.
Context
A rendering context.
Image
A GPU image.
ImageUniform
An image uniform.
Pipeline
A rendering pipeline.
Shader
A shader.
Uniform
A shader uniform.
VertexAttribute
A vertex attribute.

Enums§

BlendFactor
A blending factor.
BlendOp
A blending operation.
BufferKind
Kinds of a GPU buffer.
BufferUsage
Usage hints for a GPU buffer.
ImageFilter
Filter modes for a GPU image.
ImageFormat
Formats of a GPU image.
ImageWrap
Wrapping modes for a GPU image.
PassAction
A rendering pass action.
UniformFormat
Formats of a shader uniform.
VertexFormat
Formats of a vertex attribute.
VertexStep
Step functions for a vertex attribute.