Gorilla? Isn't that a monkey?
Nope, Gorilla's are primates.
Gorilla is a 2D drawing engine for Ogre, which can be projected into 3D space, or onto the screen as a 2D overlay, it comes in two files Gorilla.cpp and Gorilla.h. Gorilla is intended to substitute the Ogre overlay system, and to provide a good framework and basis for any Ogre programmer to build their HUD or GUI system upon.
Screenshots and Videos
Gorilla is designed for speed, thus it uses Texture Atlases, Caching and tries to render everything in one batch. Gorilla screens can be either in an overlay form (2D), or attached to a SceneNode (3D).
Gorilla can draw the following types of shapes:
- Filled (Solid, Gradient or Sprite-based) Rectangles (Canvas Rectangles)
- Outlined Rectangles (Canvas Boxes)
- Lines with n-thickness (Canvas Lines)
- Sprites (SpriteLayer Sprites)
- Plain and formatted text (Canvas Captions and Text)
Gorilla only uses Ogre as a dependency, and is developed with Ogre 1.7 in mind; but should work with any 1.x version. It works on Windows, Linux and OSX, and even iOS with the provided shader based material files.
Gorilla is released under the MIT licence.
Hand it to my primate hands!
Gorilla comes in two files, but also comes with a sample image and gorilla file called "dejavu". Which you can download in a neat package.
Gorilla is hosted and versioned by GitHub.
I'm learning to walk!
Using Gorilla is really easy and straight forward to use.
Information can be read in the very short readme file and gorilla schema., as well as reading the header file. There is also a few examples that come with it.
There is also a mini-tutorial series by Tom Koole
Any other Gorilla's about!?
Yes! I've been converting some of the Wiki articles to use Gorilla instead, they come in that nice zip file up there.
This is a port of the OgreConsole code presented by PixL in the Ogre Forums then later added to the Ogre Wiki.
This is a straight port replacing all the Overlay code with Gorilla code, some changes have been added but they are minor and do not add to the actual functionality of the class.