SDLPainter 0.1.0
QPainter benzeri SDL3 + OpenGL/Vulkan 2D çizim kütüphanesi
Yüklüyor...
Arıyor...
Eşleşme Yok
sdl_painter::AppConfig Yapı(Struct) Referans

Application penceresi ve backend yapılandırması. Ayrıntılar...

#include <app_config.h>

Public Özellikler(attribute)

std::string title {"SDLPainter Application"}
 Pencere başlığı.
int32_t width {800}
 Pencere genişliği (piksel).
int32_t height {600}
 Pencere yüksekliği (piksel).
bool resizable {true}
 Pencere yeniden boyutlandırılabilir mi?
bool vsync {true}
 Dikey senkronizasyon.
int32_t msaa_samples {4}
 MSAA örnek sayısı; 0 = kapalı.
RendererBackend backend {RendererBackend::kOpenGL}
 Kullanılacak render backend'i.
TimingMode timing {TimingMode::kVariable}
 Döngü zamanlama modeli.
int32_t fixed_update_hz {60}
 Sabit güncelleme frekansı (Hz) — yalnızca TimingMode::kFixed. OnUpdate bu sıklıkta, 1/fixed_update_hz saniyelik sabit adımla çağrılır.
int32_t target_fps {0}
 Hedef kare hızı (FPS) freni; 0 = sınırsız (yalnızca vsync sınırlar). >0 ise her frame sonunda SDL_DelayNS ile kare süresi bu değere frenlenir. vsync ile birlikte kullanılabilir (hangisi daha kısıtlayıcıysa o baskındır).
bool init_logger {true}
 spdlog varsayılan logger'ını kur (renkli konsol + Win32 VT).

Ayrıntılı tanımlama

Application penceresi ve backend yapılandırması.

C++17 aggregate — varsayılan değerlerle oluşturulup alan alan doldurulur:

cfg.title = "Demo";
cfg.width = 900;
cfg.height = 700;
Application penceresi ve backend yapılandırması.
Definition app_config.h:32
int32_t height
Pencere yüksekliği (piksel).
Definition app_config.h:40
std::string title
Pencere başlığı.
Definition app_config.h:34
int32_t width
Pencere genişliği (piksel).
Definition app_config.h:37

Üye Veri Dokümantasyonu

◆ init_logger

bool sdl_painter::AppConfig::init_logger {true}

spdlog varsayılan logger'ını kur (renkli konsol + Win32 VT).

Not
Host uygulama kendi logger'ını kullanacaksa false yapın.

◆ msaa_samples

int32_t sdl_painter::AppConfig::msaa_samples {4}

MSAA örnek sayısı; 0 = kapalı.

Not
Yalnızca OpenGL backend'de geçerlidir ve pencere oluşturulmadan önce GL attribute olarak uygulanır. Vulkan'da yoksayılır.

◆ vsync

bool sdl_painter::AppConfig::vsync {true}

Dikey senkronizasyon.

Not
Yalnızca OpenGL backend'de SDL_GL_SetSwapInterval ile uygulanır. Vulkan'da yoksayılır — sunum modu swapchain tarafından seçilir.

Bu yapı(struct) için dokümantasyon aşağıdaki dosyadan üretilmiştir: