github ocornut/imgui v1.91.8

latest release: v1.91.8-docking
23 hours ago

v1.91.8

❤️ Last summer was the 10th anniversary of v1.00! Read: 10 years of Dear ImGui ! 🎉
Reading the changelog is a good way to keep up to date with the things Dear ImGui has to offer, and maybe will give you ideas of some features that you've been ignoring until now!
📣 If you are browsing multiple releases: click version number above to display full release note contents, otherwise it is badly clipped by GitHub!


Links: Homepage - Release notes - FAQ - Issues, Q&A. Also see our Wiki with sections such as..

Dear ImGui is funded by your contributions and absolutely needs them to sustain and grow. We can invoice and accommodate to many situations. If your company uses Dear ImGui, please reach out. See Funding page. Did you know? If you need an excuse to pay, you may buy licenses for Test Engine and buy hours of support (and cough not use them all) and that will contribute to fund Dear ImGui.

❤️ Thanks to recently joining sponsors: MachineGames, id Software!, SCS Software! ! ! ❤️
❤️ Thanks to our sponsors incl Supercell! Valve!, G3Dvu! OTOY! Adobe! Lucid Games! Planestate Software! Aras P! Gravity Well! FUTO! & many individuals ❤️

Thanks to @GamingMinds-DanielC, @PathogenDavid & more for their help with github answers!


Recently released third-party extensions include:

See more extensions in our wiki page Useful Extensions.


Changes (since v1.91.7)

Breaking Changes:

  • ColorEdit, ColorPicker: redesigned how alpha is displayed in the preview square. (#8335, #1578, #346)
    • Removed ImGuiColorEditFlags_AlphaPreview (made value 0): it is now the default behavior.
    • Prior to 1.91.8: alpha was made opaque in the preview by default unless using ImGuiColorEditFlags_AlphaPreview.
    • We now display the preview as transparent by default. You can use ImGuiColorEditFlags_AlphaOpaque to use old behavior.
    • The new flags may be combined better and allow finer controls:
      • ImGuiColorEditFlags_AlphaOpaque: disable alpha in the preview, but alpha value still editable.
      • ImGuiColorEditFlags_AlphaNoBg: disable rendering a checkerboard background behind transparent color.
      • ImGuiColorEditFlags_AlphaPreviewHalf: display half opaque / half transparent preview.
  • Backends: SDLGPU3: Renamed ImGui_ImplSDLGPU3_InitInfo::GpuDevice to Device for consistency. (#8163, #7998, #7988)

Other changes:

  • imgui_freetype: fixed issue where glyph advances would incorrectly be snapped to pixels. Effectively it would only be noticeable when hinting is disabled with ImGuiFreeTypeBuilderFlags_NoHinting, as hinting itself snaps glyph advances.
  • Inputs: added IsMouseReleasedWithDelay() helper. (#8337, #8320). Use if you absolutely need to distinguish single-click from double-clicks by introducing a delay. This is a very rarely used UI idiom, but some apps use this: e.g. MS Explorer single-click on an icon triggers a rename. Generally use with delay >= io.MouseDoubleClickTime + combine with a GetMouseClickedCount() == 1 check.
  • Windows: legacy SetWindowFontScale() is properly inherited by nested child windows. Note that an upcoming major release should make this obsolete, but in the meanwhile it works better now. (#2701, #8138, #1018)
  • Windows, Style: Fixed small rendering issues with menu bar, resize grip and scrollbar when using thick border sizes. (#8267, #7887)
  • Windows: Fixed IsItemXXXX() functions not working on append-version of EndChild(). (#8350) Also made some of the fields accessible after BeginChild() to match Begin() logic.
  • Error Handling: Recovery from missing EndMenuBar() call. (#1651)
  • Tables, Menus: Fixed using BeginTable() in menu layer (any menu bar). (#8355) It previously overrode the current layer back to main layer, which caused an issue with MainMenuBar attempted to release focus when leaving the menu layer.
  • Tables, Menus: Fixed tables or child windows submitted inside BeginMainMenuBar() being unable to save their settings, as the main menu bar uses ImGuiWindowFlags_NoSavedSettings. (#8356)
  • ColorEdit, ColorPicker: Fixed alpha preview broken in 1.91.7. (#8336, #8241). [@PathogenDavid]
  • Tabs, Style: reworked selected overline rendering to better accommodate for rounded tabs. Reduced default thickness (style.TabBarOverlineSize), increased default rounding (style.TabRounding). (#8334) [@Kian738, @ocornut]
  • Debug Tools: Tweaked font preview.
  • ImDrawList: texture baked storage for thick line reduced from ~64x64 to ~32x32. (#3245)
  • Fonts: IndexLookup[] table hold 16-bit values even in ImWchar32 mode, as it accounts for number of glyphs in same font. This is favorable to CalcTextSize() calls touching less memory.
  • Fonts: OversampleH/OversampleV defaults to 0 for automatic selection.
    • OversampleH == 0 --> use 1 or 2 depending on font size and use of PixelSnapH.
    • OversampleV == 0 --> always use 1.
  • ImFontAtlas: made calling ClearFonts() call ClearInputData(), as calling one without the other is never correct. (#8174, #6556, #6336, #4723)
  • Examples: DirectX12: Reduced number of frame in flight from 3 to 2 in provided example, to reduce latency.
  • Examples: Vulkan: better handle VK_SUBOPTIMAL_KHR being returned by vkAcquireNextImageKHR() or vkQueuePresentKHR(). (#7825, #7831) [@NostraMagister]
  • Backends: SDL2: removed assert preventing using ImGui_ImplSDL2_SetGamepadMode() with ImGui_ImplSDL2_GamepadMode_Manual and an empty array. (#8329)
  • Backends: SDL3: removed assert preventing using ImGui_ImplSDL3_SetGamepadMode() with ImGui_ImplSDL3_GamepadMode_Manual and an empty array. (#8329)
  • Backends: SDLGPU3: Exposed ImGui_ImplSDLGPU3_CreateDeviceObjects()/_DestroyDeviceObjects().
    Removed return value from ImGui_ImplSDLGPU3_CreateFontsTexture(). (#8163, #7998, #7988)
  • Backends: SDL_Renderer2/3: Use endian-dependent RGBA32 texture format, to match SDL_Color. (#8327) [@dkosmari]
  • Backends: DirectX12: Texture upload use the command queue provided in ImGui_ImplDX12_InitInfo instead of creating its own.
  • Backends: OSX: Removed notification observer when shutting down. (#8331) [@jrachele]

Changes from 1.91.7 to 1.91.8 specific to the Docking+Multi-Viewports branch:

  • Docking: Fixed an issue in 1.91.7 where using legacy ImGuiWindowFlags_NavFlattened flag (instead of ImGuiChildFlags_NavFlattened) in docking branch would conflict with internal docking flags. (#8357) [@DanielGibson]
  • Backends: SDL3: new viewport windows are created with the SDL_WINDOW_HIDDEN flag before calling SDL_ShowWindow(). (#8328) [@PathogenDavid]

Gallery

"Autonomous dry stone: On-site planning and assembly of stone walls with a robotic excavator"
https://www.researchgate.net/publication/345902778_Autonomous_dry_stone_On-site_planning_and_assembly_of_stone_walls_with_a_robotic_excavator

Screen-capture-of-geometric-planning-software-a-Imgui-Interface-b-active-environment

"Screen capture of geometric planning software. a Imgui Interface, b active environment with search space, solutions, and placed stones, c available scanned stones in inventory, d selected stone viewer with VSA faces"

@CosmoCortney: "3D Mini Maps in my game enhancement tool, made possible with ImPlot3D!"
https://github.com/CosmoCortney/MungPlex

ImPlot3D.-.3D.Mini.Map.mp4

G3DVU/ARVU
(from interview: https://www.sportsvideo.org/2024/11/22/svg-sit-down-g3dvus-nikhil-deshpande-and-craig-dutra-on-the-companys-evolution-beyond-lst-ten-and-ar)

404968200-0a7c5741-cc8e-405c-b5d9-967817c6e941
404968221-48886866-c115-4aa2-9951-f5b2fa012014
Video: https://www.youtube.com/watch?v=gSykchyf3PI

@wusikijeronii: _"App3D (WIP). It's the 3D Editor for modeling, sculpting, rendering, and painting.
https://project.homedatasrv.ru/projects/app3d/roadmap
desktop

@azula1A89: "A small mind map editing software that not only supports manual editing of 2D directed graphs, but also allows you to seek some inspiration from large language models."
https://github.com/azula1A89/mindmap

Demo1.mp4

Nuake Engine by @antopilo
https://github.com/antopilo/nuake
Dev log: https://nuake.antopilo.dev/blog e.g many videos in https://nuake.antopilo.dev/blog/november
Image

@rifkybujana: "I'm working on an opensource on device LLM inference to run opensource generative AI model on your laptop CPU / GPU easily"
https://kolosal.ai/

Kolosal.AI.v0.1.3.Demo.mp4

Read more gallery posts.


Also see previous releases details.
Note that GitHub are now clamping release notes sometimes really badly, click on a header/title to read full notes.

❤️ Last summer was the 10th anniversary of v1.00! Read: 10 years of Dear ImGui ! 🎉

💰 🙏 Dear ImGui is funded by your contributions and absolutely needs them to sustain and grow. We can invoice and accommodate to many situations. If your company uses Dear ImGui, please reach out. See Funding page. Did you know? If you need an excuse to pay, you may buy licenses for Test Engine and buy hours of support (and cough not use them all) and that will contribute to fund Dear ImGui.

Don't miss a new imgui release

NewReleases is sending notifications on new releases.