ndsol / VolcanoSamples

Volcano sample code to get started with Vulkan. Keep it simple, short and sweet.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Volcano Samples

Volcano Samples are an intermediate Vulkan tutorial. Click on Sample 1 for an introduction.

  1. Screenshot GLFW Vulkan application
  2. SDL Vulkan application (Work in Progress)
  3. Screenshot Render To Disk
  4. Screenshot Android Vulkan application
  5. Screenshot The Index Buffer
  6. Screenshot Pipelines
  7. Screenshot Mipmaps
  8. Screenshot Specialization Constants
  9. Screenshot Full Screen
  10. Screenshot Cube Map
  11. Screenshot Instancing

Build Instructions

VolcanoSamples pulls in Volcano for you.

To build samples 1-5, type:

git clone https://github.com/ndsol/VolcanoSamples
VolcanoSamples/build.cmd

On Windows, first install git, python 3 and Visual C++. then type: VolcanoSamples\build.cmd

Note: samples 6+ are built on demand. Each sample's README.md has instructions.

Toolkit

Lots of great tools offer an alternative view into how your app performs. If you know of another great tool, please suggest it.

  • Vulkan Validation layers: generally you want the validation layers enabled all the time. To set the environment variables, be sure to launch the app from the same command prompt as the set or export that enabled validation:

    Windows log is in volcano.log or Visual Studio's debug output:

    set VK_LAYER_PATH=%~dp0\out\Debug\vulkan\explicit_layer.d
    set VK_INSTANCE_LAYERS=VK_LAYER_LUNARG_standard_validation
    out/Debug/01glfw
    

    Mac and Linux log to the console:

    export VK_INSTANCE_LAYERS=VK_LAYER_LUNARG_standard_validation
    out/Debug/01glfw
    
  • RenderDoc screenshot RenderDoc

    On linux, be sure to set LD_LIBRARY_PATH first:

    ./build.cmd && export LD_LIBRARY_PATH=$PWD/out/Debug
    
  • AMD Radeon GPU Profiler

    If you have an AMD GPU, inspect each part of the GPU's operations.

    AMD Radeon GPU Profiler
  • NVIDIA Nsight Graphics

    If you have an NVIDIA GPU, you may be able to inspect each part of the GPU's operations.

    On linux, a C++ frame capture may fail to build with this error: xcb/xcb_icccm.h: no such file or directory. Resolution: you need to "apt install libxcb-icccm4-dev".

Copyright (c) 2017-2018 the Volcano Authors. All rights reserved.

About

Volcano sample code to get started with Vulkan. Keep it simple, short and sweet.

License:GNU General Public License v3.0


Languages

Language:C++ 67.6%Language:C 14.4%Language:Shell 8.9%Language:GLSL 4.8%Language:Python 3.7%Language:Batchfile 0.3%Language:Objective-C 0.2%