Jump to content

Immediate mode GUI

From Wikipedia, the free encyclopedia

An immediate mode graphic user interface (GUI), also known as IMGUI, is a graphical user interface design pattern which aims to translate the Immediate mode vs retained mode API concept[1] from 3D rendering APIs to user interface API design.[2]


Casey Muratori developed the technique and coined the term "Single-path Immediate Mode Graphical User Interface" to describe it.[3][4] One of the earliest publicly available implementations was written by Sean Barrett.[5]

Examples of Immediate Mode GUIs[edit]


  1. ^ Radich, Quinn (May 30, 2018). "Retained Mode Versus Immediate Mode". Win32 apps. Microsoft. Retrieved 21 December 2019.
  2. ^ Barrett, Sean (September 2005), "Immediate Mode GUIs", Game Developer Magazine, retrieved 17 June 2024
  3. ^ "Immediate-Mode Graphical User Interfaces (2005)". Immediate-Mode Graphical User Interfaces (2005). Retrieved 2021-06-15.
  4. ^ Barrett, Sean (September 2005). "Immediate Mode GUIs" (PDF). Game Developer. Vol. 12. pp. 34–36. Retrieved 14 February 2021.
  5. ^ "Sample IMGUI implementation and demo program". silverspaceship.com. Retrieved 2021-06-15.
  6. ^ Cornut, Omar (2019-12-22). "ocornut/imgui: Dear ImGui: Bloat-free Immediate Mode Graphical User interface for C++ with minimal dependencies". GitHub.
  7. ^ kotlin-graphics (2019-12-19). "kotlin-graphics/imgui: Bloat-free Immediate Mode Graphical User interface for JVM with minimal dependencies (rewrite of dear imgui)". GitHub.
  8. ^ "egui: an easy-to-use immediate mode GUI in pure Rust". GitHub. 3 June 2021.
  9. ^ "Gio - immediate mode GUI in Go". giDoui.org. Retrieved 2019-11-14.
  10. ^ Korrovits, Tarvo (2019-12-19). "actsl/kiss_sdl: Simple generic GUI widget toolkit for SDL2". GitHub.
  11. ^ Mettke, Micha (2019-12-22). "vurtun/nuklear: A single-header ANSI C gui library". GitHub.