Descent 3 is the first project developed by
Outrage Entertainment. According to programmer Jason Leighton, one of the major problems during the game's development cycle was a lack of direction and control. He explained that the team had "No
code reviews, no art reviews, [and] no way of saying, 'This is bad and we should be going in a different direction.'" This lack of oversight and authority worked for
Descent and
Descent II because they were developed by small groups that worked closely together and often in the same room. However, as Outrage grew from eight people to almost 20 by the end of the project, the developers did not introduce enough management to control the process. Leighton recalled having to build the team and company while starting work on the game. Originally,
Descent 3 was intended to support both a
software and a hardware renderer, implying that the
rendering process of the game could take place either in the
CPU or dedicated hardware like a
video card, but about six months after starting development, the team decided to go with a hardware-only renderer because it allowed them to create impressive
graphics and maintain a solid
frame rate without worrying about the limitations imposed by the software renderer. This was a difficult decision since the team had to scrap many tools and software rendering technology that were already developed. In addition, computers with
hardware acceleration were not common at the time the decision was made. The developers stated: "We knew just by looking at our progress on the game under acceleration that we had a beautiful looking game with all the latest technologies — but would anyone actually be able to play it?" As development progressed, hardware acceleration became more popular. The game natively supports the
Direct3D,
Glide and
OpenGL rendering
APIs for graphics, and the
A3D and
DirectSound3D technologies for sound. The new technology also allowed the developers to create both indoor and outdoor environments; one of the biggest complaints of
Descent II was that it was considered too "tunnely". To this end, the developers created a new technology which featured an indoor
portal rendering engine connected to a
flight-sim-like terrain engine, collectively called the Fusion Engine. The portal engine permitted designers to create small rooms with complex geometry. These rooms would later be linked together via shared dividing
polygons called portals to create a portalized world for the player to fly through. In contrast, the terrain engine, which was initially planned for another game and whose function is to create more polygonal detail as players get closer to the ground and decrease polygons when they are farther away, gave designers the ability to create expansive outdoor terrains. Transitions between both engines were achieved using an external room (with its
normal vectors inverted) that could be placed anywhere on the terrain map. With this technique, developers could create hybrid levels where the player could transit from indoor to outdoor areas in real-time and without
loading screens. Leighton commented that whenever one of these transitions occurs, "the game code [switches]
collision detection,
rendering, and so on, to use the terrain engine." The company had no
standardization of level design tools. Leighton said, "Some people used
3D Studio Max, some used
Lightwave, and one designer even wrote his own custom modeler from scratch." This practice led to an inconsistent quality across the game's levels. For example, one designer would create structures with great geometry but bad texturing, while another would create the opposite. Once the structures were modeled individually, they were all imported into a custom editor, called D3Edit, so that the designers could assemble the elements into the levels. The D3Edit editor received constant updates because it initially did not feature an intuitive
interface for designers. It was not until the last third of the development period that the editor improved significantly. Leighton remarked, "Even in the shipped game you can tell which levels were made early on and which were made near the end of the production cycle. The later levels are much better looking, have better frame rates, and generally have better scripts." Developers also considered the idea of shipping the game with a
level editor based on the one they used to create the game's levels. Due to the constant changes the developers made to their own editor, it was hard for them to design a more user-friendly one. In addition to the changes in the game's engine, the developers decided to improve the
artificial intelligence to give each enemy a distinct behavior. According to Matt Toschlog, president of Outrage Entertainment and lead programmer of
Descent 3, "It's very rewarding for the player to meet a new enemy, get to know him, learn his quirks, and figure out the best way to kill him. It's great when a game requires both thinking and quick reactions." Originally, the developers planned to add weather effects that would disorient the player's ship during gameplay, but this feature was ultimately not implemented due to time and technology constraints. Multiplayer games were heavily tested to ensure their network stability and support
IPX,
TCP, and
DirectPlay. The actual development of the game took 31 months to complete, with the developers describing it as both a joyful and painful process due to in part of the almost nonexistent management and the rapidly evolving technology at the time. ==Marketing and release==