Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/csnewman/go-gfx
Cross-platform graphics framework for Go
https://github.com/csnewman/go-gfx
Last synced: 5 days ago
JSON representation
Cross-platform graphics framework for Go
- Host: GitHub
- URL: https://github.com/csnewman/go-gfx
- Owner: csnewman
- License: mit
- Created: 2024-09-29T13:34:14.000Z (3 months ago)
- Default Branch: master
- Last Pushed: 2024-11-17T18:05:43.000Z (about 1 month ago)
- Last Synced: 2024-12-14T17:52:40.920Z (11 days ago)
- Language: C++
- Size: 1.06 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# 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.