Skip to content

satchelfrost/cvr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cool Vulkan Renderer

Cool Vulkan Renderer (or simply cvr) is a project initially inspired by raylib, but with a Vulkan twist (i.e. more verbose, less beginner friendly, and overall less feature rich). For now this project is public for my own convenience, however, it might help others interested in C programming with Vulkan. The eventual goal is to make vk_ctx.h a proper header-only library, but currently it still has a few dependencies. Note that some examples may have private data because they are for my research; these examples (should) have a little note attached in each folder to let you know the data is private.

Building from Source on Linux

First, install the dependencies using a package manager e.g.:

sudo apt install vulkan-tools libvulkan-dev vulkan-validationlayers-dev spirv-tools libxxf86vm-dev libxi-dev

Next, we need a shader compiler. Download glslc from here and copy (or symlink) it to your /usr/local/bin.

With the dependencies installed we can now compile the build system.

cc -o nob nob.c
./nob -h

NOTE: nob will recompile itself if you make any changes to it. You do not need to run cc -o nob nob.c ever again. For more information on nob (short for "no build") see Musializer.

Running an example:

To list available examples run the following:

./nob -l

To build and run an example use the -e flag, e.g.:

./nob -e 3d-primitives

Chaining multiple flags can also work, for example here is how to do a clean build and run the example

./nob -ec 3d-primitives

About

Cool Vulkan Renderer

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published