Today, I’d like to write about the results of a development effort which I undertook together with former co-worker Kevin Lang in our spare-time. Our goal was to create a small but fine PC game but unfortunately it never saw the light of the day. We therefore decided to release the game-independent source code of these efforts to the public as we believe we developed a novel approach to integrating Qt User Interfaces into the Ogre3D development framework.
In a nutshell, this new framework called “Cutexture” should provide developers with the following benefits over off-the-shelf User Interface solutions available for Ogre3D:
- The full range of Qt’s widgets can be used in Ogre3D, including the Webkit webbrowser component, enabling completely new ways of integrating Web content into 3D environments.
- Powerful: Qt is one of the most powerful User Interface toolkits currently available.
- Ease of development: Qt’s .ui files are supported for rapid User Interface development with Qt Designer.
- Reliable: Using the proven Qt framework, widgets are rendered into a texture instead of relying on unstable overlay techniques provided by desktop environments.
- Flexible: Possibility to extend Cutexture to use Qt widgets as textures on arbitrary Ogre objects.
- Open Source: Cutexture is available under the “MIT license”, thereby providing full source code access to the framework while allowing the development of proprietary (closed source) applications.
Cutexture is available for download as a public repository on Github.
Cutexture uses the CMake build system. A build is invoked with
Cutexture’s dependencies are:
- Qt version 4.6 or higher, with qmake available on the system path when invoking cmake
- Ogre3D version 1.6.4 or higher
- Ogre Input System (OIS) 1.2.0
Specific installation paths for these dependencies are defined in CMakeLists.txt
I would be happy to receive feedback on Cutexture and of course welcome any code contributions.Update 2010-11-10: Added screenshot.