Skip to content

Latest commit

Β 

History

History
34 lines (25 loc) Β· 1.29 KB

README.md

File metadata and controls

34 lines (25 loc) Β· 1.29 KB

go-gfx

Cross-platform graphics framework for Go.

Warning

Work in progress.

Structure

The repository contains the following packages:

  • gfx - User facing API. Will eventually be stable.
  • hal - Internal hardware abstraction layer. Expect breaking changes.
  • internal/
    • appkit - macOS windowing backend.
    • metal - Metal rendering backend.
    • vulkan - Vulkan rendering backend.
    • windows - Windows windowing backend.

Platforms

macOS Linux Windows iOS Android Web
Windowing πŸ—οΈ AppKit βŒ› Wayland
βŒ› X11
πŸ—οΈ πŸ’€ πŸ’€ πŸ’€
Rendering πŸ—οΈ Metal
πŸ— Vulkan
βŒ› Vulkan πŸ—οΈ Vulkan
πŸ’€ DX12
πŸ’€ πŸ’€ πŸ’€

βœ… = Supported.
πŸ—οΈ = Work in progress.
βŒ› = Future.
πŸ’€ = No near term plans.

Platforms not listed here, such as those with licensing restrictions, can be supported by implementing the hal layer. This allows you to benefit from the gfx abstraction and a unified codebase.