Home

Awesome

LuaJIT-GLFW

LuaJIT FFI bindings for GLFW 3 and OpenGL.

This library contains everything needed to start a basic OpenGL app in Lua.

Building

LuaJIT-GLFW builds bindings from the systems OpenGL and GLFW headers, as well as an included glext.h file. To build the bindings, you need to have a C preprocessor (only GCC is supported at the moment), headers for OpenGL and GLFW 3, and Python 3 installed, though the resulting file should be cross-platform compatible.

To build with GCC, just run build.sh in the repository directory. This will create a glfw.lua file, which is the only file you need to install.

Usage

To load the library, use the require function:

local luajit_glfw = require "glfw"

LuaJIT-GLFW loads the following libraries:

You can also use the following snippet to concisely localize the libraries.

local gl, glc, glu, glfw, glext = luajit_glfw.libraries()
-- Or if you just need the libraries:
local gl, glc, glu, glfw, glext = require('glfw').libraries()

Additionally, LuaJIT-GLFW wraps GLFW functions and sets metatypes for GLFW structs for convenience. See glfw_base.lua