[Contact]
GL Lua Shell

So its not really a shell. More like a scripting engine. I originally wrote this with the intention of using it for rapid prototyping. Having no compile time is a general benefit. Added to that the flexibility of the language Lua (lambda functions, operator overloading, superset of OOP functionality) and I figured it was a worthwhile invention.

At first I coded a lot of do-this-all-at-once functions for getting myself off the ground. glLight and glMaterial were overloaded to accept not only their default parameters, but also tables which would allow a user to pass all their desired information through using only one call.

Design patterns changed soon when I realized if I moved enough of the bottleneck to the GPU then the CPU could spare itself the extra time dinking around with a scripting language.

Eventually I got so attached I ended up writing an image flow synthesis algorithm, a realtime radiosity renderer, and a realtime flame fractal renderer all using this framework. Plenty more too, which I still have yet to post.

A word of warning for all who use it: I have only implemented what functions I have needed as I went. So far this covers a wide range of the base GL 1.1 functions, but this by no means covers all of them. This is still very much a work in progress.

Take note this is a command line program. Usage is as follows:

gLush filename

Where filename must end in .lua