MCPcopy Create free account
hub / github.com/Ipotrick/Daxa

github.com/Ipotrick/Daxa @3.6

Chat with this repo
repository ↗ · DeepWiki ↗ · release 3.6 ↗ · + Follow
1,541 symbols 4,068 edges 95 files 33 documented · 2% updated 10d ago3.6 · 2026-05-03★ 59310 open issues

Browse by type

Functions 1,069 Types & classes 472
What it actually does AI analysis from the code graph — generated when you open this
loading…
README
<img src="https://github.com/Ipotrick/Daxa/raw/3.6/misc/daxa-logo.png" width="800" alt="Daxa logo">

Why Daxa?

✅ Strong modern GPU focus - no legacy hardware compromises
🚀 Bindless by default – no descriptor management nor bindings
🛠️ Shader Build system, shader integration and host/shader code sharing utils
🧩 Convenient, efficient TaskGraph rendering framework

Daxa is a Vulkan-powered GPU abstraction purpose-built for modern graphics cards (NVIDIA: >=Turing, AMD: >=RDNA3, INTEL: >=Arc). The simplifications and abstractions are done to specifically remove all those api details that no longer matter on modern hardware.

Other than the focus on modern architecture only, what makes Daxa unique?

Full descriptor/binding abstraction. Full Bindless in shaders and host side.

  • buffers, images, samplers, and acceleration structures are all exclusively accessed via IDs or pointers
  • very efficient on modern hardware
  • dramatically simplifies code as it completely removes one of the largest and headache inducing parts of modern GFX APIs

Shader Utilities/ Shader Integration.

  • provides full shader build system with #include management, shader hot loading, SPIRV caching and more
  • provides daxa GLSL and SLANG headers allowing for bindless and other daxa feature access in shaders
  • provides daxa.inl file that allows you to write code shareable between host and shader via macros

TaskGraph acting as full-on rendering framework for your project.

  • automatic synchronization between tasks, multiple separate TaskGraphs and queues
  • efficient precompilation model: allows you to record graph once and execute it many times, significantly reducing CPU overhead
  • tons of utilities within task callbacks such as linear scratch buffer allocator and automatic image view generation
  • tons of validation checks with detailed error messages explaining the issue and potential solutions
  • automatic graph optimizations: reordering of tasks in order to minimize barriers, memory-aliased transient resources to reduce memory use and more

Daxa also includes commonly supported Vulkan-middleware features:

  • automatic deferring of resource destruction post GPU execution
  • internal GPU memory allocator
  • default parameters for object construction, simplified object creation
  • swapchain synchronization and frame in flight handling
  • threadsafety
  • access to modern features such as raytracing, mesh shaders and multi queue
  • utilitiy classes such as a ringbuffer for staging memory or Dear-ImGui integration

Getting started

To begin using Daxa, visit docs.daxa.dev, where you'll find a comprehensive tutorial and a Wiki containing detailed information about the Daxa API.

Additionally, the Daxa repository includes a collection of example projects located in the tests folder.

Working on something with Daxa? Whether it's a renderer, a tool, or just a small experiment—feel free to share it or ask questions on the Discord server. It’s a good place to connect with others using Daxa and stay up to date with ongoing work.

Core symbols most depended-on inside this repo

Shape

Function 551
Method 518
Class 423
Enum 49

Languages

C++100%
C1%

Modules by API surface

include/daxa/types.hpp156 symbols
src/cpp_wrapper.cpp93 symbols
src/utils/impl_task_graph.cpp81 symbols
src/impl_device.cpp77 symbols
include/daxa/utils/task_graph.hpp75 symbols
src/impl_command_recorder.cpp68 symbols
include/daxa/utils/task_graph_types.hpp66 symbols
src/impl_core.hpp53 symbols
include/daxa/device.hpp50 symbols
src/utils/impl_task_graph_ui.cpp45 symbols
tests/3_samples/2_mpm_mls/camera.h40 symbols
src/utils/impl_pipeline_manager.cpp39 symbols

For agents

$ claude mcp add Daxa \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page