SDLPainter 1.2.0
SDL3 + OpenGL/Vulkan 2D çizim kütüphanesi
Yüklüyor...
Arıyor...
Eşleşme Yok
app_config.h
1#pragma once
2
3#include "sdl_painter/app/events.h"
4#include "sdl_painter/renderer.h"
5
6#include <cstdint>
7#include <string>
8
9namespace sdl_painter {
10
12enum class TimingMode : uint8_t {
15 kVariable,
16
21 kFixed,
22};
23
25enum class StatsOverlayMode : uint8_t {
27 kNone,
29 kFps,
31 kDetailed,
32};
33
43struct AppConfig {
45 std::string title{"SDLPainter Application"};
46
48 int32_t width{800};
49
51 int32_t height{600};
52
54 bool resizable{true};
55
67 bool high_dpi{false};
68
72 bool vsync{true};
73
77 int32_t msaa_samples{4};
78
80 RendererBackend backend{RendererBackend::kOpenGL};
81
83 TimingMode timing{TimingMode::kVariable};
84
87 int32_t fixed_update_hz{60};
88
92 int32_t target_fps{0};
93
96 bool init_logger{true};
97
98 // --- Ekran üstü istatistik göstergesi ---
99
105 StatsOverlayMode stats_overlay{StatsOverlayMode::kNone};
106
111 Key stats_overlay_key{Key::kF1};
112
117 bool show_fps_in_title{false};
118
125
128};
129
130} // namespace sdl_painter
Application penceresi ve backend yapılandırması.
Definition app_config.h:43
RendererBackend backend
Kullanılacak render backend'i.
Definition app_config.h:80
bool resizable
Pencere yeniden boyutlandırılabilir mi?
Definition app_config.h:54
bool high_dpi
Yüksek piksel yoğunluğu (HiDPI / Retina) desteği.
Definition app_config.h:67
int32_t fixed_update_hz
Sabit güncelleme frekansı (Hz) — yalnızca TimingMode::kFixed. OnUpdate bu sıklıkta,...
Definition app_config.h:87
int32_t msaa_samples
MSAA örnek sayısı; 0 = kapalı.
Definition app_config.h:77
std::string stats_overlay_font
Gösterge yazı tipi; boşsa sistem fontları aranır.
Definition app_config.h:124
int32_t height
Pencere yüksekliği (piksel).
Definition app_config.h:51
std::string title
Pencere başlığı.
Definition app_config.h:45
int32_t width
Pencere genişliği (piksel).
Definition app_config.h:48
int32_t target_fps
Hedef kare hızı (FPS) freni; 0 = sınırsız (yalnızca vsync sınırlar). >0 ise her frame sonunda SDL_Del...
Definition app_config.h:92
bool init_logger
spdlog varsayılan logger'ını kur (renkli konsol + Win32 VT).
Definition app_config.h:96
int32_t stats_overlay_font_size
Gösterge yazı boyutu (punto).
Definition app_config.h:127
TimingMode timing
Döngü zamanlama modeli.
Definition app_config.h:83
StatsOverlayMode stats_overlay
Başlangıçtaki gösterge modu.
Definition app_config.h:105
bool vsync
Dikey senkronizasyon.
Definition app_config.h:72
bool show_fps_in_title
FPS'i pencere başlığında da göster ("<başlık> — 142 FPS").
Definition app_config.h:117
Key stats_overlay_key
Gösterge modunu döngüleyen tuş; Key::kUnknown = devre dışı.
Definition app_config.h:111