Langadia is a framework for Free Pascal using SDL, Lua and OpenGL.
Langadia has been started in January 2008 by the NoManGames team. It was planned to create an easy to use framework based upon SDL, OpenGL and Lua. It was designed to be the base for a next game title and also for smaller demos and tools. The project has been cancelled when NoManGames disbanded in mid 2008.
Langadia uses SDL, OpenGL and Lua to do its jobs.
Window creation and drawing
SDL is used to create a window in Langadia. As for now, this limits the number of available windows to one (as SDL only permits one window). However, as Langadia has been aimed at Game programming and 3D (with OpenGL) this should not be a too big drawback. Beneath SDL, two additional libraries are used:
SDL_image can load image files of different formats; supported are e.g. BMP, JPeg, PNG and TGA.
The second library is SDL_ttf, which loads fonts and renders them to off-screen bitmaps. Both libraries can be found at http://www.libsdl.org/projects/.
For rendering, Langadia uses OpenGL. There are classes for loading and displaying images (“textures”, in terms of OGL) and fonts (also treated as textures).
Langadia includes a scripting interface and classes for using Lua. Lua is a lightweight, fast and easy to use scripting language. With the provided interface between Lua and Langadia (called Langadia Lua Scripting Interface, short LGLSI), it was even possible to write applications nearly completely in Lua (with a compiled application only as “loader”). Especially the internal widget set – which includes Forms, Labels, Buttons, Single and Multi Line Edits – can be handled in Lua.
- Window creation and event handling
- Texture loading and management
- Scripting interface
- Font loading
- Mesh classes and OBJ loader
- Widget set (Forms, Labels, Buttons, Edits, Scrolling)
Langadia has been released under the terms of the GNU GPL v. 3.
Langadia is discontinued! The development stopped as NoManGames – the original developer – disbanded. The download is provided by RPdev in the hope that it will be useful to somebody out there, however, we cannot guarantee that there will be further improvements or even bug fixes. You are – nevertheless – invited to use and extend Langadia on you own. If you need some help or advice, feel free to use our forum.