Current CEGUI developments and future plans

We are currently working on improving CEGUI 1.0 (current default branch) to bring CEGUI to the next level by upgrading core code using C++11 features, by improving the API design for easier and more inituitive use, by resolving naming issues and by adding features that will make everyday CEGUI usage easier. We will also in time improve the official API docu, which we consider crucial for the Release of 1.0.

To summarise our current developments and goals for 1.0:

  • Text rendering is currently slow due to Renderer changes, we will fix this soon and potentially also improve how Font will be rendered in general, by considering Kerning and thus improving the look/readability.
  • We already replaced some containers using the new unordered containers of C++11 and replaced output/input int types using std::int8_t etc. We will continue adding C++11 features such as move-constructors, std::array, std::copy (removing memcpy), simplify loops, potentially use std::thread and are already in the process of doing so.
  • We will replace sscanf and printf using sstream, to make CEGUI ready for multi-threading and protect it from changes to the global locale, which can occur from other libraries or user-code. We already finished this process for the PropertyHelper class.
  • A Vulkan Renderer will be added once Vulkan drivers are available
  • All CEGUI containers, which allow adding widgets as items, will be adapted so that they can be filled using layout XML files as well as via code. Currently filling them in layout files is not possible for all widgets, which is a big mistake in my opinion
  • Let's also not forget that 1.0 already contains a lot of new features such as: a new input handling based on semantics making it suited for different input devices, loading/rendering simpel SVGs and creating custom vector graphics in runtime as CEGUI Image, new MVC pattern for container widgets, etc etc etc

We are also working to solve the open tickets on our bug tracker, feel free to check them out if you want to know more about upcoming changes.

Version 0.8.X has also not been forgotten. We work on bug fixes and ABI-compatible new features there. A new Release is planned and contains a lot of fixes we have applied in the past year. Unfortunately, a smaller release-blocker is keeping us from releasing it currently, but progress on resolving it has already been made. We will release the new version as soon as we have solved all blockers!

CEGUI tutorial videos by MakingGamesWithBen

The channel MakingGamesWithBen on youtube recently posted this awesome guide on how to install/build CMake and go through the entire build process on Windows. Every CEGUI that every beginner should watch this video!

I also just added this video to the Getting Started section with some extra information - check it out. And don't forget to follow Ben's future videos, it seems like he got more interesting videos coming up on CEGUI!

Edit: A new video has been published. This one gives you a good introduction to the integration of CEGUI into your project, the resource initialisation and basic rendering.

Edit2: And another helpful video by Ben: This one shows how to set up SDL input injection for CEGUI and talks about bit shifting and UTF Strings. In this context I would like to remind users to look at the CEGUI application templates (news here), which also deals with input injections, updates etc (SDL2 and GLFW currently only):

CEGUI (0.8.5) will have new OpenGL ES 2 Renderer: Support for OpenGL ES 2.X and OpenGL ES 3.X and Epoxy (alternatively to GLEW)!

User Yaron Cohen-Tal provided us with a new contribution (PR link here) adding OpenGL ES 2 and OpenGL ES 3 support via a new Renderer (OpenGL ES Renderer). This is a good base for Android, iOS, etc support!

But this is not all: The SampleBrowser now also supports GLFW3 and Epoxy can be used instead of GLEW for the GL extensions. The changes are merged into our v0-8 stable branch (link here) and are undergoing further testing. Feel free to try it out by cloning the branch or pulling the latest changes and report to us about it on our forum/IRC. We would like to hear about any issues you have with it, or any improvements you want to suggest or also feel free to just tell us if it worked nicely for you! The changes will be present in the upcoming 0.8.5 Release.

CEGUI samples running in your web browser (javascript based)!

User "iceiceice" took the CEGUI library and the Samples using OpenGL3 Core Profile Renderer and ported them to OpenGL ES2. This way he could use them with emscripten, making it possible to run CEGUI in your browser.

More Info here:

This is the link to the result: Try it out, it works really well!


Application Templates added

We got a new user contribution from lucebac that just got merged into CEGUI's v0-8 branch yesterday, which will be part of our next CEGUI Release (0.8.5).

He provided what we decided to name "application templates". The currently present application templates (based on GLFW and SDL2) are buildable using CMake for your OS and IDE of choice, just like the rest of CEGUI. The templates are small stand-alone minimal applications that use CEGUI. They serve as a great starting point for creating your own application using CEGUI or might be used as quick guidance to integrate CEGUI into an existing program.

Up to now we only had the SampleBrowser, which in itself is great for showing off samples (Be sure to check out the well-documented code of the samples to learn CEGUI) and for us to quickly test if features still work, but was not a good starting point to setting up your own CEGUI application or for explaining how CEGUI is set up. We suggest beginners to most of all, read the API docs, then to look at all samples in the SampleBrowser that are relevant to them and finally to grab the application template and see how it works.

In the future we would like to add support for more window creation systems for the application template, and maybe also a Ogre and Irrlicht based application template. User contributions are very welcome (

Also I want to remind all our users of our Ticket Issue system on bitbucket:
I was made aware recently that there are some issues that do not get reported on our forum or issue tracker by users. It is very important for us that unreported issues get reported on our issue tracker (or at least on our forum). Use the search function to look for reported issues. If the issue was already reported you may also additionally comment on it or add your vote for it, which will raise awareness. We definitely pay more attention to issues (and also suggested features) with more votes, since this shows they are likely to be relevant to more people.

Discuss the news here


For those who haven't visited it yet, check out CEGUI on Open HUB:

It contains interesting information about the CEGUI project, its commits, contributors and a lot of statistics.


CEGUI (as part of Worldforge) was not accepted for GSoC2015

Unfortunately we were not accepted for Google Summer of Code 2015.

We had 3 successful years of participation, with a 100% completion rate and we are very thankful for that.
Ogre3D was neither accepted this year nor last year. Mozilla also apparently didn't make it. It seems that a lot less organisations were accepted this year (2015) compared to 2014.

The accepted organisations can be seen here:

CEGUI issue tracker now on bitbucket!

Timotei has finished moving the issue tracker from our mantis page to bitbucket. All issues have been migrated with their original IDs, attachments, contents and comments.

The CEGUI issue tracker can be found here:
and the CEED issue tracker here:

Our old mantis page will stay online in read-only mode. Remember that the IDs of mantis tickets are identical to the IDs of the bitbucket if you want to access the new ticket, e.g. : <- migrated from
You need to select the right project on bitbucket first when you do that (i.e. CEGUI or CEED or SILLY)

Here is our twitter tweet:

Feel free to create new issues at our new issue trackers (but please only use it only for bugs/features requests etc and not for support requests and stick with the layout ;) )!

IMPORTANT: Call for bitbucket user names for the CEGUI issues migration from mantis to bitbucket

All current mantis tickets have been migrated to bitbucket issue tracker. Therefore, we call all people who care that their past CEGUI mantis ticket submissions are attributed to their bitbucket accounts, to tell us their CEGUI and bitbucket user names: just write to team (at ) cegui . org . uk - We will then correctly link all comments and reports to the supplied account.

We give users 3 days to notify us. Until then our new issue tracker will not go public. Our old issue tracker will remain online for the next months as READ-ONLY, until we decide to remove it entirely. For now, this means you will not be able to post new issues until the 3 days are over: The new issue tracker goes online on Monday 23rd Feb 2015

So again: Everyone who wants their tickets attributed to their bitbucket account (otherwise it will just say "anonymous" and underneath "original author: XXX") should notify us.

Thank you!

Sorry for the website downtime!

First we had issues with the DNS because of the domain hoster which changed things without notifying us. (great job!). It took us some time to resolve the issue because CrazyEddie's e-mail was not reachable because it was part of this domain and this was the only contact we had of him. I took a while until we found some other e-mail of his, after days of stalking him using search engines.

Btw., in cases like this it is good to check our twitter for updates:

After we had resolved our issues we noticed that our site may still contain backdoors (from the drupal hack-wave in october 2014) and we actually found malicious files there as well as an altered google cache, manipulated php files and finally decided to completely roll back our entire database by months and re-add all news manually. This whole process took us a while. I did the finishing touches today, so everything is up again.

On a completely different note: We are going to remove mantis and move all tickets to the bitbucket issue tracker. In the future users can file tickets there. We believe this will be better for our users.