JiggleScript
home | downloads | forums | documentation | mailinglist

About
JiggleScript is a development enviroment that combines the well-known web programming language JavaScript with OpenGL, the standard graphics API used in modern 3D games. The target audience are those that may be familar with JavaScript already from building web pages and would like to try their hand at something that might be a little more fun without needing to learn C or C++ or other "bigger" languages.

Features

News

Please keep an eye on the forum if you're interested in smaller news updates. I hope to post updates of my progress as time goes on.
Right now I'm using this thread. Check it out!

[09/14/2004] - The rewrite is going well. Here's a sneek-preview shot of JiggleScript running on MacOSX with one script controlling 3 windows! I really hope I can make this all work on Windows. I haven't got to trying to port it yet. :-) Most of the stuff on the site is outdated now when it comes to the new version. However it still applies the to versions available for download.

[09/07/2004] - I'm working on a new structure for the entire system and it is looking very promising. The new system is based on loadable modules where everything--including the language javascript itself--is a module. This means massive customization and 3rd party expansion ability.
[07/28/2004] - Added forums!
[07/27/2004] - Hacked up the site a bit. And yes, still working on it when I get time. I should really release something again soon...
[06/07/2004] - Never fear, I'm still working on JiggleScript! Currently I am working on sound support, some performance improvements, and a few other things. Stay tuned!
[02/27/2004] - Posted spaceship.jig which was contributed by Joshua.
[02/25/2004] - Updated the JIG File docs with spiffy CSS boxes and a little actual content.
[02/24/2004] - Released Alpha 2 and a whole new documentation system.
[02/15/2004] - Added a zip with some Windows DLLs that your computer may be missing. (Thanks Joshua)
[02/05/2004] - Changed the name to JiggleScript since there's a lot of things called Jiggle already and got JiggleScript.com.
[02/03/2004] - Released Alpha 1.

Screenshots
startup spiffy flying arrow

Download
Check out the downloads page. JiggleScript is available for both Windows and MacOS X. Programs written in JiggleScript will work on either platform without any changes!

Documentation
JiggleScript Documentation is not yet complete, but now that I've put together a system for it, it should grow slowly with time. As it is now the entire Alpha 2 API should be documented at least in terms of showing what exists. There may not be any notes attached, but a bit of creativity and a peek or two at the sample scripts should be enough to get started.

The download also includes a command line tool for helping manage the JiggleScript source file. The source files are XML formatted and include a script block as well as any number of texture blocks which contain the base64-encoded image file to use for the texture. The command line tool can add, remove, and extract chunks from the source files without needing to worry about base64 encoding or the XML format itself.

The source files are XML-formatted but are simply text. Therefore, even though they are named filename.jig, they can be opened with TextEdit, Notepad, Metapad, KEdit, Project Builder, XCode, etc. Any editor will work as long as it saves out to plain text files (no fancy RTF formats).

Samples
The startup script is the rotating 3D logo that you see when first starting JiggleScript. This is a good example showing the use of the Texture class and some basic keyboard input and animation.

Arrow uses squished cylinders that are attached together to create an arrow you can fly around the screen (as can be seen in the above screenshot). It shows off several of the interesting bits of the new stuff in Alpha 2.

Bounce shows simple mouse input and some basic animation. (Note, this one doesn't always work right on MacOS due to some known mouse coordinate problems.)

Analog Clock sample code showing how Rotation() objects work in connection with the control frame. (Not the best example as it is somewhat outdated.)

Community
Join the JiggleScript mailing list and keep up to date on the latest news as well as discuss topics related to development using JiggleScript.

Notes
[Alpha 1 & 2] There seems to be some mouse coordinate problems under MacOS X. Near as I can tell it is a problem with SDL and not directly with JiggleScript. I'm looking into it. Also, debugging on MacOS X is hard since it doesn't output a log file as the Windows version does. That's something else I'll work on.

Contributed Scripts
Spaceship - Joshua Jones


[ mail me | visit me ]