Interview with Gary McTaggart and Charlie Brown

While the rest of the Ritual employees are busy working on SiN, Gary McTaggart and Charlie Brown have been planning for the future, creating a top secret next-generation engine that Ritual will use in its future games, instead of licensing technology from id or another company. They.were cool enough to sit down and answer all of my questions about what exactly they've been working on since they left 3DFX and began work at Ritual Entertainment. We talked about everything from the technical aspects to how the new engine/game will effect the rest of Ritual's employees and how it fits into the SiN universe. So, without further ado, here is our New Tech Interview with Gary and Charlie!

Have you settled on a name for the new engine yet? Will this be the name of the new game?

The engine is called ‹berEngine. No.

When will the new game ship?

The first game based on the new engine will ship sometime in the middle of 1999.

What are the key differences between the new tech and the Quake engine?

‹berEngine is based heavily on the idea of highly organic surfaces. Charlie Brown and I are doing some pretty interesting things with procedural surfaces rendered with continuous level of detail. This allows the engine to adaptively render the scene so that as things get closer to you or as you have spare CPU cycles, more detail and smoother surfaces appear. Our lighting techniques and surface material appearance will be substantially better than the current state of the art.

What is the target system for the new engine? Will it support the same 3D cards as GLQuake, 3DFX, PowerVR, etc?

We are designing ‹berEngine to be scalable. 3Dfx's Voodoo Graphics is pretty indicative of the lower end of the 3D hardware that uber engine will support. We expect that P2-class machines will be fairly commonplace by the time the first uber engine game ships. Any card that we will support should have the following as minimum requirement:

* depth buffering
* bilinear filtering
* >50 megapixels/second fillrate
* 500,000 triangles/second sustained performance
* 16-bit color
* source color * destination color alpha blending - ( source color * source alpha ) + ( destination color * ( 1 - source alpha ) ) alpha blending for regular old translucent stuff

On the other hand, to get really good image quality and framerate, we'd like most gamer oriented 3D hardware to have with the following features:

* simultaneous textures (a la Voodoo 2 and higher end Voodoo cards)
* >100 megapixels/second per texture
* > 1 million triangles/second sustained performance
* 24-bit color (especially if the card doesn't do simultaneous textures)
* more alpha blending modes:
* source color + destination color for specular effects
* bump mapping

We may not need (or use) direct support for hardware bump mapping, although certain features have to be present to implement without direct support. We will be contacting all of the 3D hardware companies to make sure that their hardware plans match what we are expecting for optimal performance with ‹berEngine. (If any 3D chip company reps are reading this and haven't talked to me, drop me a line.)

The biggest weakness of most 3D cards right now is the lack of good support for multi-textured rendering. Multi-texturing means that each surface in the scene has more than one texture on it. These textures are blending together using a mathematical operation such as multiplication, addition, subtraction, etc. When using multi-pass rendering to render scenes with lightmaps, the scene is rendered more than once (either at the scene level or the polygon level) where the results are blending together with a multiply operation.

Multi-pass rendering can be used for other things such as specularity maps (rendering highlights as you seem them on apples for instance), projected textures (rendering a texture onto a surface as if you have a slide projector; see http://www.3dfx.com/software/download_demoroom.html for an example). Multi-texturing can be performed through a combination of multi-pass rendering and/or simultaneous textures.

Is the new engine designed specifically for first-person shooters, or is it more of a broad, multipurpose engine?

‹berEngine will be fairly generally useful. . . more so than current "usable" engines. We are, however, designing the engine to be used for a particular game that we have in mind. The elements that we choose to have in that game will be the best supported by the engine. I could easily see someone doing a flight sim or a driving game with ‹berEngine on the other hand.

What networking protocols will the new engine support? Will it have the same IPX and TCP/IP support as Quake?

TCP/IP is a given, IPX is a no-brainer if still necessary by the time ‹berEngine ships. ‹berEngine is being designed with the large-scale multiplayer Internet in mind.

Will the new engine be as expandable as the Quake engine? What development tools will users need to program their own add-ons?

‹berEngine will be expandable through the use of DLLs and scripting languages as appropriate. From the programmer point of view, a good Win9x/NT-based C++ compiler should do just fine. I haven't looked into it lately, but I'm pretty sure that there is a good, free port of GNU's C++ out there. We are using Microsoft's Developer Studio version 5.x at the moment. The engine will be kept fairly portable such that it can be ported to other operating systems with ease. . .of particular interest to me is Linux since it is an extremely stable, free operating system.

We are writing our own level editor which we will freely distribute with the game, so there is no extra cost there for creating worlds. Charlie Brown is writing 3DStudio Max plugins for character creation. We realize that 3DStudio Max is a bit on the pricey side for the average user, so we will provide hooks/assistance to the people on the net that write level editors to allow them to write something that is useful to create ‹berEngine characters. For that matter, the core engine and the level editor will be connected through a thin messaging system so that people can write level editors for it without have to rewrite the guts of the engine.

Do you think that most Quake engine licensees will begin developing their own tech?

It depends on the company. . . there are some companies that will remain specialized in the art/design side of game creation. They are perfect engine license candidates for the Quake engine and ‹berEngine.

Will Ritual continue to use the Quake/Quake2 engine after the new tech is completed?

This has not yet been decided, it is mostly a timing issue.

Will SiN 2 be based on this new tech, or will it use the Quake engine?

We haven't decided yet if Sin 2 will use Quake 2 technology or ‹berEngine technology.

Is SiN still Ritual's primary focus, or has it taken a back seat to the new project's development?

All of the members of the SiN team remain focused on their project. Gary McTaggart and I were brought on board in addition to the SiN team and are currently the only "active" members on the new project. As far as artists and level designers - see next question.

I understand that the new engine will be developed at the same time work is going on for SiN. Will the two projects share team members, or will each project have a dedicated development team?

Until Sin is complete, Charlie Brown and I are the only programmers working on the new technology. The level design department has grown enough that the new project can afford to use a couple of them fairly soon to work on the new game.

This switchover should happen as soon as Charlie and I get far enough along with the engine and level editor so that they can spend some time experimenting so that we can get an idea of what they can do with ‹berEngine.

Has much of the game design for the new project has begun? Any idea when we'll get a better idea of what the game is all about?

We've held off on doing a complete design for the game for now. We are waiting to see what sort of environments we are going to be able to create with ‹berEngine before making any final design decision.

Does the new game take place in the same 'universe' as SiN? Will it share any of the characters or settings?

Unfortunately, we cannot say much about the new game at this point, but I think we can say that the game will not be in the SiN universe, nor will it share any of the characters.

How does the new game fit into the current game market? Do you see mainly Quake and SiN fans playing the game, or will you be trying to reach different markets?

I think Quake and SiN fans will be VERY happy, but I also believe that due to nature of the game and the environments there will be some spillage into other markets as well.

That's it! Many many thats to Gary and Charlie to taking the time to do this. This is only the beginning of our on-going Uberengine coverage, so keep checking out RITUALISTIC.