API overview

A practical reference for native Sulkan packs, from your first pass to scene programs and compute.

Sulkan 0.5.1 · Minecraft 26.3 · Native format 1

Start with a working pack

Download Sulkan Starter. It has one output image, one graphics pass, and one Exposure option.

For a full native pack, download Sulkan Realistic, extracted unchanged from the published 0.5.1 JAR. Its port notes explain provenance and limits. It is the main bundled shader, not a minimal learning example.

How the render graph works

Minecraft / Sodium scene
        │
        ▼ $scene, optional depth and terrain snapshots
   Your graphics / compute passes
        │ reads create dependencies
        ▼ named resources
   The resource named by present
        │
        ▼ Minecraft main target

The manifest declares resources and passes. A pass’s reads identify inputs, writes identify outputs, and present selects the final 2D color image. Dependencies determine execution order. Sulkan culls unused passes, checks limits, compiles shaders for Vulkan 1.2, and manages GPU resource lifetimes.

You do not need a scene replacement program to add a post-processing effect.

Find the reference you need

TopicUse it for
First packA complete, editable example
ManifestRoot fields, images, textures, options
Passes & resourcesGraphics, compute, buffers, scheduling
Frame uniformsMatrices, camera, time, weather, depth
Scene programs & shadowsTerrain interfaces, material IDs, native shadows
Validation & debuggingReloads, graph errors, resource limits

Version contract

These pages describe Sulkan 0.5.1 / native format 1. Manifest version is 1, not "0.5.1".

Use the version selector to choose the API for your release.

This is not an Iris/OptiFine compatibility layer. Scene replacements must match the selected Minecraft/Sodium pipeline’s actual vertex and binding interface.