Skip to content

Basic Samples

This section contains the basic samples that demonstrate fundamental aspects of the engine.

# Walkthrough Topic
1 Basic rendering Camera, descriptor sets, depth buffer and frames in flight
2 Render passes Several passes that pass their results to each other
3 Push constants Small per-draw-call data without buffers
4 Uniform arrays Many elements of the same data behind one descriptor
5 Textures Loading images, mip maps, samplers and barriers
6 Multisampling Smooth edges with MSAA
7 Multithreading Recording command buffers on several threads

The samples in the repository build on each other: each one starts from the basic rendering sample and adds one technique. These walkthroughs follow that structure and describe only what each sample changes, so start with basic rendering and then pick whatever you need.

Running the samples

All samples share the same controls:

Key Action
F7 Toggle V-Sync
F8 Toggle full screen
F9 Switch to the Vulkan backend
F10 Switch to the DirectX 12 backend
Esc Exit the application

F11 and F12 are deliberately unused, as debuggers such as Visual Studio, RenderDoc and PIX reserve them.

To build the samples, configure the engine with LITEFX_BUILD_EXAMPLES enabled, which is the default. The executables and their shaders and assets are placed in the binaries directory of your build.