|

| VULKAN® TUTORIALS AND SAMPLES

Vulkan® provides low-level graphics APIs for creating games and other graphics applications. That’s something we can help you with!

| FEATURED TUTORIALS

Understanding Vulkan® objects

An important part of learning the Vulkan® API is to understand what types of objects are defined in it, what they represent and how they relate to each other.

| FEATURED PRESENTATIONS

Lessons Learned from Optimising a AAA Vulkan Title on Desktop - Lou Kramer

PDF

The Most Common Vulkan Mistakes - Dominik Witczak (May 2016)

PDF

| VULKAN TUTORIALS

Reducing Vulkan API call overhead

This guest post, by Arseny Kapoulkine from Roblox, looks at the costs associated with calling various Vulkan functions tens or hundreds of thousands of times per frame, and ways to bring them down.

Understanding Vulkan® objects

An important part of learning the Vulkan® API is to understand what types of objects are defined in it, what they represent and how they relate to each other.

Vulkan and DOOM

This post takes a look at the interesting bits of helping id Software with their DOOM Vulkan effort, from the perspective of AMD’s Game Engineering Team.

Vulkan barriers explained

Vulkan barriers are unique as they requires you to provide what resources are transitioning and also specify a source and destination pipeline stage.

Using Vulkan Device Memory

This post serves as a guide on how to best use the various Memory Heaps & Memory Types exposed in Vulkan on AMD drivers, starting with some high-level tips.

GCN Shader Extensions for Direct3D and Vulkan

One of the mandates of GPUOpen is to give developers better access to the hardware, and this post details extensions for Vulkan and Direct3D12 that expose additional GCN features to developers.

Fast compaction with mbcnt

With shader extensions, we provide access to a much better tool to get compaction done: GCN provides a special op-code for compaction within a wavefront.

| VULKAN SAMPLES

Vulkan OoORasterization

The Vulkan™ out-of-order rasterization sample shows how to use the out-of-order rasterization extension.

Vulkan mbcnt Sample

This sample shows how to use the AMD_shader_ballot extension and mbcnt to perform a fast reduction within a wavefront.

GLTFSample Cauldron Sample Project

This sample demonstrates how to use most of Cauldron’s features. It is also a useful reference for getting started with developing your own samples and prototypes.