When it comes to making money from middleware, you don’t have to be a genius. In fact, sometimes that doesn’t help at all.
For Geomerics, this is annoying because the Cambridge-based company is stacked with IQ. It has a 10-strong academic consultancy team on tap, including the likes of UCL graphics researcher Jan Kautz and emeritus professor David Hestenes, the very man who kicked off the re-emergence of geometric algebra, the form of mathematics on which the company’s smarts are based.
Sadly, the real trick to making money out of middleware is being able to provide a product that solves a problem faced by lots of game developers. That, and being able to sell the technology at an acceptable price, as well as ensuring it can be easily integrated into existing workflows and building a sustainable company to provide support, updates and develop new products.
This is the reason that as it prepares real-time lighting product Enlighten for a GDC launch, Geomerics has its academics on tap in universities, not writing SDK code and answering the phones. Still, there are three PhDs within the dozen or so staff whose office, coincidentally, is downstairs in the same complex that houses top developers Sony Cambridge and Ninja Theory.
“We’ve recruited from a wide range of backgrounds to ensure we can always find a fresh perspective. This is the delivery team. We focus on applications and making products that work,” explains CTO Jules Davis (right), who was previously Kuju’s technical director.
Together with Davis, ex-academic-turned-COO Chris Doran and CEO Gary Lewis make up Geomerics’ frontline management team. “The thing with middleware is plenty of interesting technologies emerge but they are often more expensive than what’s already being used in terms of time or cost,” Lewis muses. “We need to make sure we can demonstrate that Enlighten is better, faster and cheaper. If we hit all of those, we’ll have a business.”
Davis’s take on the technology is no less ambitious. “We believe Enlighten can transform the way artists interact with in-game lighting,” he states. “We’ll be able to provide the ability to instantly control the mood and atmosphere of lighting, but it’s not just a case of saying, ‘It makes your game look better’. It’s going to be more efficient in terms of time and money too.”
Combining with this into what the company hopes will be a perfect storm of acceptability is the fact that despite the clever science behind Enlighten, the integration process is relatively simple. “It’s not some sort of monolithic engine,” Davis explains. “It’s a small, modular API that’s scalable and flexible so developers have control over the quality of their output and the performance overhead.”
When it comes to day-to-day usage, Enlighten is designed to be used as an artist-focused tool. “It enables you to iterate your materials and lighting in real-time, which makes an enormous difference in terms of how quickly you can come up with something stunning and unique,” Davis points out.
When it comes to what Enlighten actually does, it’s best explained as being a real-time solution for global illumination, or more specifically, the diffuse interreflections that occur when light reflects from an uneven surface that scatters rays in all directions.
Davies simplifies it further. “Developers just want better lighting,” he says. “It’s one of the main issues why games on nextgen hardware aren’t really nextgen yet. We take all the mess of special lighting cases and the fudges and fixes people are currently using, and provide a single, stable and robust solution, as well as saving on budget and providing a fast authoring turnaround. We’re doing in real-time what you’d expect to take two hours to render offline. And, when it comes to middleware adoption, we’re looking to raise the bar for everyone.”
Now pulling that off really would be genius.
Enlighten consists of four components. The core SDK consists of a pre-compute library and a runtime engine. The pre-compute step processes the game’s geometry and outputs such data in a form accepted by the runtime. The runtime’s inputs are the geometry data and the default lightmaps. It outputs the Enlighten lightmaps and volumeric samples, and runs on supported platforms’ CPUs, whether that be a PlayStation 3 SPU, and Xbox 360 core or a PC thread.
The second element is the utility library. This is the source code that Geomerics has used to create its demo. It comes with detailed instructions and documentation to enable developers to integrate it within their pipeline.
Next up is the framework code. Including standard components such as maths libraries and mesh renderers, this is designed to run the Enlighten demo. Jules Davis compares it to the sample code provided with DirectX – it’s designed to let you play around but if you ship a game using it, you’re lazy.
The final piece is the Enlighten demo itself. Rough and ready, it’s been designed so an artist can load assets in and get an idea about how Enlighten works straight out of the box.
For more information on Enlighten, click here for details on the firm’s video demo ahead of GDC. Geomerics is hosting a sponsored session at the conference on Thursday, February 21st at 9am.