Skip to content
Source code examples for "API without Secrets: Introduction to Vulkan" tutorial
C++ C Other
Branch: master
Clone or download

Latest commit

Ekzuzy Merge pull request #23 from whydoubt/exec
Set executable flag on bash scripts
Latest commit e8e384b Jul 23, 2018

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Document/Images Added description of Tutorial07 to README.md file. Added image presen… Jun 24, 2016
Project Set executable flag on bash scripts Jul 21, 2018
.gitignore Added "/Project/build" folder to GIT's ignore list. Jun 24, 2016
README.md Added link to the text of the 7th part of the tutorial. Mar 19, 2018
license.txt Updated License to Apache 2.0 Apr 21, 2017

README.md

API without Secrets: Introduction to Vulkan

by Pawel Lapinski

Source code examples for "API without Secrets: Introduction to Vulkan" tutorial which can be found at:

https://software.intel.com/en-us/articles/api-without-secrets-introduction-to-vulkan-preface

Special thanks to Slawomir Cygan for help and for patiently answering my many, many questions!

Drivers:

Vulkan drivers and other related resources can be found at https://www.khronos.org/vulkan/

Tutorials:

01 - The Beginning

Introduction to a Vulkan world

https://software.intel.com/en-us/articles/api-without-secrets-introduction-to-vulkan-part-1

Tutorial presents how to create all resources necessary to use Vulkan inside our application: function pointers loading, Vulkan instance creation, physical device enumeration, logical device creation and queue set up.


02 - Swap chain

Integrating Vulkan with OS

https://software.intel.com/en-us/articles/api-without-secrets-introduction-to-vulkan-part-2

This lesson focuses on a swap chain creation. Swap chain enables us to display Vulkan-generated image in an application window. To display anything simple command buffers are allocated and recorded.


03 - First triangle

Graphics pipeline and drawing

https://software.intel.com/en-us/articles/api-without-secrets-introduction-to-vulkan-part-3

Here I present render pass, framebuffer and pipeline objects which are necessary to render arbitrary geometry. It is also shown how to convert GLSL shaders into SPIR-V and create shader modules from it.


04 - Vertex Attributes

Buffers, memory objects and fences

https://software.intel.com/en-us/articles/api-without-secrets-introduction-to-vulkan-part-4

This tutorial shows how to set up vertex attributes and bind buffer with a vertex data. Here we also create memory object (which is used by buffer) and fences.


05 - Staging Resources

Copying data between buffers

https://software.intel.com/en-us/articles/api-without-secrets-introduction-to-vulkan-part-5

In this example staging resources are presented. They are used as an intermediate resources for copying data between CPU and GPU. This way, resources involved in rendering can be bound only to a device local (very fast) memory.


06 - Descriptor Sets

Using textures in shaders

https://software.intel.com/en-us/articles/api-without-secrets-introduction-to-vulkan-part-6

This tutorial shows what resources are needed and how they should be prepared to be able to use textures (or other shader resources) in shader programs.


07 - Uniform Buffers

Using buffers in shaders

https://software.intel.com/en-us/articles/api-without-secrets-introduction-to-vulkan-part-7

Here it is shown how to add uniform buffer to descriptor sets, how to provide data for projection matrix through it and how to use it inside shader.

You can’t perform that action at this time.