Could ImGUI Be the Future of GUIs?
It's important to point out why games use immediate mode GUIs:<p>1. The GUI needs to be overlaid on the game image (OpenGL/DirectX). This is difficult with traditional GUIs like QT.<p>2. The GUI needs to be updated in sync with the game, again, it's difficult to integrate traditional GUIs event loops into the game loop, especially with stuff like double/triple buffering.<p>3. The GUI needs to be as fast as possible, games are severely CPU bound.<p>A retained mode GUI is typically easier to use, convenience is not why people use immediate mode GUIs.<p>It's worth pointing out that the immediate/retained split doesn't apply only to the GUI - there are retained mode graphical APIs - DirectX used to have one. They are only used in low-demand games, they sacrifice a lot of speed for the convenience of using a retained mode.