Isis Game Engine
Note: This page is currently just a stub. I hope to expand it with more samples and documentation in the future.
Isis is a game engine I wrote for Osiris (Isis is the ancient Egyptian mother-goddess and the wife of Osiris). It uses OpenGL and runs on Windows & Mac OS X (also Linux/UNIX, but I have not tested it on those in a while).
The core of the engine is the IsisScript scripting language. It's a lightweight little object-oriented language designed to take care of a lot of the hassles of typical game programming, like memory management. Everything in Osiris except for the 3D parts and some of the AI was written in IsisScript.
Here is the obligatory "Hello World" program in IsisScript:
Main()
{
println("Hello World!");
}
Running it using the 'ivmconsole' program should give you something like this:
Here is a slightly more complicated program, which opens up a window with a happy face image in it. You can move the happy face around using the I, J, K, & L keys:
var image;
var x;
var y;
Main()
{
(new GameApp(300, 300, 1,
"Happy Face Example Game")).RunScript(this);
}
GameInit()
{
image = LoadIGZ("happyface.igz");
x = 100;
y = 100;
}
GameMain()
{
Clear(Color(255,255,255));
image.Draw(x, y);
}
KeyPressed(s, m)
{
if (s == "i")
y -= 10;
else if (s == "j")
x -= 10;
else if (s == "k")
y += 10;
else if (s == "l")
x += 10;
}
This example demonstrates the GameApp class, which creates a window and runs a script. It calls GameInit() on startup, GameMain() every frame, and GameShutdown() on exit (if they exist).
If you save this program as 'example.iss' and create an image named 'happyface.igz' in the same directory (using the Isis Image & Font Maker tool), you should see something like this when double-clicking the .iss file:
Until I expand this page a little more to include more samples and documentation, you can check out the source code to a more complete game if you are curious about the language & engine features: The Adventures of Bruto.
If you want to try Isis out yourself, here are some download links:
- Windows installer package
- Windows binaries only (If you don't want to install or don't have admin privs. Note: the handy file associations will not be set up with the binary-only package)
- Source code
Mac OS X/Linux users should grab the source code package and then run ./configure, make, make install as usual (libsdl & libsdl-mixer will probably need to be installed if they aren't already). Note that the "Image & Font Maker" and "Vector Art Editor" tools are written in C# and thus are Windows-only.