Skip to content

Zenith.NET is a modern, cross-platform graphics and compute library for .NET. It provides a unified GPU programming interface supporting DirectX12, Metal, and Vulkan backends.

License

Notifications You must be signed in to change notification settings

qian-o/Zenith.NET

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

124 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Zenith.NET Logo

Zenith.NET

A modern, cross-platform graphics and compute library for .NET.
One API for DirectX 12, Metal, and Vulkan.

NuGet License

Status: Work in Progress


📖 Overview

Zenith.NET is a GPU abstraction layer that unifies DirectX 12, Metal, and Vulkan under a single .NET API. It enables developers to build high-performance rendering and compute applications without writing backend-specific code. The library supports modern GPU features including ray tracing and mesh shading, and integrates seamlessly with popular .NET UI frameworks.

Visit the documentation site for tutorials and API reference.

✨ Features

  • 🎯 Unified API — Write once, run on DirectX 12, Metal, and Vulkan
  • 🎨 Graphics Pipeline — Vertex, hull, domain, geometry, and pixel shaders
  • Compute Pipeline — General-purpose GPU computing
  • 💡 Ray Tracing — Hardware-accelerated BLAS/TLAS and hit groups
  • 🔷 Mesh Shading — GPU-driven geometry with mesh and amplification shaders
  • 🖼️ UI Integrations — Avalonia, MAUI, WinForms, WinUI, WPF, and Uno Platform

🌍 Platform Support

DirectX 12 Metal 4 Vulkan 1.4
Windows
Linux
Android
macOS 🚧
iOS 🚧

🚧 Metal backend is under development.


📦 NuGet Packages

Core

Zenith.NET

Backends

DirectX12 Metal Vulkan

Extensions

ImageSharp ImGui Skia Slang

Views

Views Avalonia MAUI WinForms WinUI WPF

About

Zenith.NET is a modern, cross-platform graphics and compute library for .NET. It provides a unified GPU programming interface supporting DirectX12, Metal, and Vulkan backends.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published