Vulkan Schnee 0.0.1
High-performance rendering engine
Loading...
Searching...
No Matches
Settings.h
Go to the documentation of this file.
1#pragma once
3#include <cstdint>
4#include <vector>
5
11
18
19const std::vector<const char*> validationLayers = {
20 "VK_LAYER_KHRONOS_validation",
21 "VK_LAYER_KHRONOS_synchronization2"
22};
23
24constexpr int INITIAL_WINDOW_WIDTH = 1920;
25constexpr int INITIAL_WINDOW_HEIGHT = 1080;
26constexpr int MAX_FRAMES_IN_FLIGHT = 2;
27
28#ifndef IS_IN_DEBUG
29constexpr bool ARE_VALIDATION_LAYERS_ENABLED = false;
30#else
31constexpr bool ARE_VALIDATION_LAYERS_ENABLED = true;
32#endif
33
34constexpr bool IS_VSYNC_ENABLED = false;
35constexpr uint32_t MAX_TEXTURE_COUNT = 1024u;
36constexpr uint32_t MAX_MESH_COUNT = 1024u;
37constexpr uint32_t MAX_MESHLETS_PER_BIN = 262144u;
38// MAX_SCENE_OBJECT_COUNT removed - buffers now resize dynamically
39constexpr uint32_t MAX_PIPELINES = 32u;
40
50// #define HEADLESS
51// #define COMPUTE_DEBUG
52
55
56constexpr uint32_t MESHLET_VERTEX_COUNT = 252;
57constexpr uint32_t MESHLET_TRIANGLE_COUNT = 252;
58
60
69{
70 bool enabled = true;
71 float errorThresholdPixels = 1.0f;
72 bool ditherTransitions = true;
73 bool debugVisualization = false;
74 int32_t forcedLodLevel = -1;
75 uint32_t minClustersForLod = 4;
76};
constexpr int INITIAL_WINDOW_HEIGHT
Definition Settings.h:25
GPU_DEBUGGING_MODE
Definition Settings.h:13
constexpr uint32_t MAX_PIPELINES
Definition Settings.h:39
constexpr uint32_t MESHLET_VERTEX_COUNT
Definition Settings.h:56
constexpr OPENXR_LAUNCH_MODE DEFAULT_OPENXR_LAUNCH_MODE
Engine execution modes (mutually exclusive)
Definition Settings.h:53
constexpr bool IS_VSYNC_ENABLED
Definition Settings.h:34
constexpr uint32_t MAX_MESHLETS_PER_BIN
Definition Settings.h:37
constexpr EngineCore::PipelineNames DEFAULT_MATERIAL_PIPELINE
Definition Settings.h:59
constexpr int INITIAL_WINDOW_WIDTH
Definition Settings.h:24
constexpr int MAX_FRAMES_IN_FLIGHT
Definition Settings.h:26
const std::vector< const char * > validationLayers
Definition Settings.h:19
constexpr uint32_t MESHLET_TRIANGLE_COUNT
Definition Settings.h:57
constexpr uint32_t MAX_MESH_COUNT
Definition Settings.h:36
constexpr bool ARE_VALIDATION_LAYERS_ENABLED
Definition Settings.h:29
OPENXR_LAUNCH_MODE
Definition Settings.h:7
constexpr uint32_t MAX_TEXTURE_COUNT
Definition Settings.h:35
constexpr GPU_DEBUGGING_MODE USE_GPU_PRINTF
Definition Settings.h:54
LOD (Level of Detail) system settings. Controls the Nanite-style per-cluster LOD selection behavior.
Definition Settings.h:69
bool enabled
Enable/disable LOD system.
Definition Settings.h:70
int32_t forcedLodLevel
Force specific LOD level (-1 = automatic)
Definition Settings.h:74
bool ditherTransitions
Use dithered transitions instead of hard cuts.
Definition Settings.h:72
float errorThresholdPixels
Target pixel error for LOD selection.
Definition Settings.h:71
bool debugVisualization
Color clusters by LOD level in shader.
Definition Settings.h:73
uint32_t minClustersForLod
Minimum cluster count to generate LOD hierarchy.
Definition Settings.h:75