Clone this wiki locally
Read this Page first to decide if Nifty really matches your requirements.If this wiki doesn't satisfy your thirst for knowledge about Nift-gui, then you should read the Nifty-gui manual
Nifty GUI is a Java Library that supports the building of interactive user interfaces for games or similar applications. It utilizes LWJGL/JOGL/LibGDX/Slick2d for OpenGL rendering. The configuration of the GUI is stored in XML files or it can be defined from Java directly.
In short, Nifty helps you to layout stuff, display it in a cool way and let you interact with it.
Nifty does not restrict you to a set of pre-defined standard controls (although we have those too) but even better than the pre-defined controls is that you can build your own!
Nifty wants to be a framework that does all the hard work for you but gives you as much creative freedom on the other hand.
The bare bones of Nifty are elements like 'image', 'panel' and 'text'. At the moment Nifty really consists of these elements. Everything else like input controls (Textfield-Controls, Buttons, Popups etc) are really just a combination of the basic elements.
By combining the basic elements you can create your own controls the same way as the build-in controls are being build.