Sega Graphics Library

From Sega Retro

The Sega Graphics Library (SGL) is a set of 3D game development tools developed by Sega AM2 to assist in Sega Saturn development. It was released to registered third-party Saturn developers around mid-1995.

Contents

History

Even before its release the Sega Saturn's complex architecture made it difficult for developers to fully utilise. Many early Saturn games, including first-party products such as Virtua Fighter and Daytona USA demonstrate significant performance issues when attempting to tax the hardware. Compared to the Saturn's closest rival, the PlayStation, more development time was required to achieve similar levels of performance, and while for much of its run Saturn sales out-stripped the PlayStation in Japan, worldwide the PlayStation was selling significantly more units and attracting the lion's share of Western console developers.

In its early days the Saturn was under-documented, and developers were forced to explore the hardware at a very low level, developing their own toolchains for game development while receiving limited support from Sega. While fully possible to develop a complex game, the process was not quick and generally involved programming in assembly language. The Saturn was not the first console requiring deep knowledge of the hardware to achieve results (this is common across all forms of computing), however its multi-processor architecture and higher consumer expectations meant this system was less appealing to developers than rival platforms.

In response to the troubles (and requests from Yu Suzuki[1]), AM2's Tadahiro Kawamura led development on a set of libraries for programmers[1], designed to quickly interface with the Saturn hardware. The SGL libraries were written in C and were designed to simplify common tasks, most notably the rendering of textured 3D polygons. Sega offered other libraries for other tasks (e.g. sound) but SGL that was widely seen as the most significant addition to Sega's development resources.

Virtua Fighter 2 was the initial showpiece for SGL, with a texture-mapped Pai being demonstrated on the 24th March, 1995[2]. It went on to be used in the majority of AM2's products, which in turn spurred on the release of updates to the library in the months and years which followed. The SGL libraries were (incorrectly) referred to as an "operating system" in Japan[3].

SGL development dried up when the Saturn was replaced with the Sega Dreamcast, which uses an entirely different achitecture and is largely incompatible with any of the Saturn libraries released prior. A design goal for the Dreamcast was to avoid issues with nonexistent programming libraries or confusing architecture, so similar issues were avoided in the Saturn's successor.

Despite its claimed benefits, not all developers chose to utilise SGL, either producing their own C libraries or working predominantly in assembly. The very nature of C means that performance is sacrificed for ease of development, and support in alternative development hardware such as PsyQ is not known.