GLSL Hacker 0.6.0 Available: PhysX 3, Mac OS X 10.9 And More (FBX, RPi, …)!

GLSL Hacker 0.6.0 - Cross platform pixel hacking tool with GLSL, Lua and Python

A new version of GLSL Hacker is ready for your pixel hacking cravings under Windows Mac OS X, Linux (and Raspberry Pi). GLSL Hacker comes with many new features, changes and bugfixes. Let’s have an overview of the changelog.

1 – GLSL Hacker 0.6.0 Release Highlights

The version number is now made up of 4 numbers: That will allow me to release new versions faster because the build number is reserved for internal changes that do not impact GLSL Hacker API. The patch number is reserved for bugfixes and very tiny changes in the API. The minor version is reserved for more important changes like new features. And the major version is for… I hope to release GLSL Hacker 1.x.x.x one day 😉

GLSL Hacker 0.6.0 has been updated for Mac OS X 10.9 Mavericks. I don’t know for other OS X developers, but for me, the couple OS X 10.9 + Xcode 5.0.1 was a real hassle! Anyway, after about a day of tweaking the source code as well as the makefiles, I finally compiled and linked GLSL Hacker source code. Now with OS X 10.9, you can code OpenGL 4.1 demos.

Just a short note for OpenGL developers. The new OSX 10.9 SDK comes with a new define:

#define kCGLOGLPVersion_GL4_Core 0x4100

But kCGLOGLPVersion_GL4_Core seems to have no effect. So to get an OpenGL 4.1 context, just create a context with kCGLOGLPVersion_3_2_Core. Maybe Apple will update its SDK later with the use of kCGLOGLPVersion_GL4_Core.

GLSL Hacker 0.6.0 - OpenGL 4 tessellation under Max OS X 10.9 Mavericks
OpenGL 4 tessellation under Max OS X 10.9 Mavericks – available in the Code Sample Pack

GLSL Hacker 0.6.0 comes with two new plugins: one for PhysX and the second one for FBX. The PhysX plugin implements the functions of the PhysX 3.3 SDK (the plugin is fully operational under Windows and OS X but not under Linux because of some missing symbols). I released few weeks ago a PhysX 3 flag demo that show one use of the new PhysX API of GLSL Hacker.

GLSL Hacker 0.6.0 - PhysX 3 rigid bodies test
PhysX 3 rigid bodies test – available in the Code Sample Pack

The FBX plugin allows to load 3D objects from Autodesk FBX format. The FBX plugin is cool because it allows to load FBX files but also 3DS and OBJ files.

GLSL Hacker 0.6.0 - Autodesk FBX plugin test
Autodesk FBX plugin test – available in the Code Sample Pack

In the pure OpenGL side, I added the support of atomic counters (OpenGL 4.2). An article about atomic counters will be published shortly. OpenGL 4.4 features are planned for GLSL Hacker 0.7.x.

In the Windows et OS X versions, few handy keyboards shortcuts have been added: Ctrl+O to load a demo file, Ctrl+R to reload the current demo file and Ctrl+L to open the log file.

GLSL Hacker 0.6.0 includes a new Lua / Python function (gh_utils.get_scripting_libs_dir) to get the the path of the folder that contains libraries used by demos. The libraries folder is located in GLSL Hacker root directory: GLSLHacker/libs/.

GLSL Hacker Lua/Python API (I called it the host API) is bit low level. That means you have to call many functions to render something and it may be intimidating for beginners. To solve this problem, I created a new high level API called Moon3D which wraps and simplify the use of the host API. Moon3D is currently available in Lua (the Python version is planned for later). More details about Moon3D can be found HERE.

GLSL Hacker is also available on the Raspberry Pi computer (see HERE too). Only the core of GLSL Hacker (no plugin) is ported to Raspbian (the Debian version optimized for the Raspberry Pi hardware). That means that Lua scripting, texture loading, OpenGL ES 2.0 shaders, *.3DS / *.OBJ 3D object files loading are supported. But PhysX, OpenCL, FBX and Python functions are not available because all those functions reside in plugins.

GLSL Hacker 0.6.0 for Raspberry Pi
Simple GLSL Hacker (OpenGL ES 2.0) demo running on the Raspberry Pi.

GLSL Hacker 0.6.0 for Raspberry Pi
Julia fractal demo running on the Raspberry Pi.

2 – GLSL Hacker 0.6.0 Downloads

GLSL Hacker for Windows [download#353#image]

GLSL Hacker for Windows 64-bit (XP, Vista, 7 and 8)
GLSL Hacker for Windows [download#366#image]

GLSL Hacker for Windows 32-bit (XP, Vista, 7 and 8)

GLSL Hacker for OS X [download#354#image]

GLSL Hacker for OS X 10.7, 10.8 and 10.9

GLSL Hacker for Linux [download#355#image]

GLSL Hacker for Linux 64-bit (Ubuntu-based, openSUSE)

GLSL Hacker for Raspberry Pi [download#369#image]

GLSL Hacker for Raspberry Pi 32-bit

Useful links:

  • GLSL Hacker code sample pack is available HERE.
  • The host API reference guide is available HERE.
  • The support forum is available HERE.

3 – GLSL Hacker 0.6.0 Changelog

GLSL Hacker changelog is now available HERE.