Skip to content

Graphics API

EntropyPortal supports multiple graphics APIs through the Slang RHI (Render Hardware Interface) project. This abstraction layer allows the engine to run on Windows, macOS, and Linux without changing the core rendering code.

APIOSNotes
MetalmacOSPrimary backend for development. High performance on Apple Silicon.
VulkanWindows, LinuxCross-platform support. Used for validation layers and debug.
D3D12WindowsNative Windows support. Efficient for PC builds.

The engine does not make direct API calls (e.g., vkCmdDraw). Instead, it uses a high-level GPU Abstraction Layer that wraps the Slang RHI interface (rhi::IDevice, rhi::ICommandQueue).

  1. Unified Shader Language: All shaders are written in pure Slang.
  2. Safety & Automation: The Abstraction Layer handles barriers, tracking, and object lifetimes automatically.
  3. Modern Design: Modeled after D3D12/Vulkan, supporting command buffers and async compute.