Coffee is an opinionated 2D game engine focused on simplicity, explicitness, and type-safety. Declarative, type-safe loading screens with progress tracking. Built-in debug view with performance metrics. Explicit, easy-to-use, hardware-accelerated 2D graphics API. Multiplatform support leveraging OpenGL, Vulkan, Metal, D3D11, and D3D12. To get started, implement the Game trait. Then, call Game::run with some WindowSettings to run your game. Draw your game with an explicit 2D graphics API. Load your game assets with type-safety and build loading screens with consistent progress tracking. Build a responsive graphical user interface for your game. A bunch of performance information about your game. It can be drawn! Coffee moves fast and the master branch can contain breaking changes! If you want to learn about a specific release, check out the release list.

Features

  • Responsive, customizable GUI
  • Fixed, deterministic timestep
  • Explicit and efficient batched draws
  • Mesh support
  • Texture array support
  • Off-screen rendering
  • TrueType font rendering

Project Samples

Project Activity

See All Activity >

License

MIT License

Follow Coffee

Coffee Web Site

Other Useful Business Software
$300 Free Credits for Your Google Cloud Projects Icon
$300 Free Credits for Your Google Cloud Projects

Start building on Google Cloud with $300 in free credits. No commitment, no credit card required until you're ready to scale.

Launch your next project with $300 in free Google Cloud credits—no strings attached. Test, build, and deploy without risk. Use your credits across the entire Google Cloud platform to find what works best for your needs. After your credits are used, continue with always-free tier services. Only pay when you're ready to scale. Sign up in minutes and start exploring.
Start Free Trial
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of Coffee!

Additional Project Details

Operating Systems

Linux, Mac, Windows

Programming Language

Rust

Registered

2022-12-13