You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Introduce a launch-time display-format preference (auto/rgba8/rgb10a2/hdr) with precedence: --display-format, IMIV_DISPLAY_FORMAT, saved imiv.inf preference, then auto. Add --display-format CLI parsing and IMIV_DISPLAY_FORMAT environment support; preference is persisted in imiv.inf and changes are next-launch only. HDR is reserved and currently falls back to auto.
UI: expose display-format selector in Preferences and save/load display_format state. Validate/sanitize values and surface helpful UI messages when rgb10a2 or hdr are requested.
Renderer/platform: thread requested display format through app/renderer state. GLFW: add framebuffer bit hints for OpenGL when requesting RGB10A2. OpenGL: probe window with requested format and log actual framebuffer bits. Vulkan: request 10-bit surface formats when requested, select surface format and present mode, record whether swapchain supports transfer-src (screenshots), and expose verbose logging and fallback reporting. Metal: choose display and preview pixel formats per preference, create pipelines/textures accordingly, and fall back to BGRA8 when 10-bit formats are unavailable; verbose logging reports selection and fallbacks.
Capture: implement conversion utilities for Vulkan and Metal to convert various framebuffer formats (including A2R10/A2B10 packed formats) into RGBA8 for screenshots/previews; fail gracefully when format unsupported.
Misc: update persistence read/write, types/headers, and several renderer/backends to carry the new DisplayFormatPreference. Add helper functions for parsing/printing display-format names and some Vulkan/Metal format name helpers for logging.
0 commit comments