There are example programs available for you to play with / understand how the different
pieces fit together. The C++ examples are in
nanogui/src/, and the equivalent
Python examples are in
The first example program is rather long, but not altogether complicated. It is effectively an enumeration of how one would go about adding various different kinds of Widgets to the window being displayed.
The second program demonstrates how simple label/editor widget-type layouts can be written in a very concise manner.
The third example program demonstrates how to manage OpenGL / GLFW on your own for the
C++ side, and how to detach the NanoGUI
mainloop() on the Python side.
The fourth example program demonstrates the GLCanvas widget, which renders an arbitrary sequence of OpenGL commands into a NanoGUI widget.