Fahrenheit is an effort to create a unified high-level API for 3D computer graphics to integrate Direct3D and OpenGL. It is designed primarily by Microsoft and SGI and also includes the work of HP-MS joint venture.
Direct3D and OpenGL are low-level APIs that concentrate primarily on the rendering steps of a "pipe" of 3D processing. Programs that use this API should provide a large number of pipeline residual handles. Fahrenheit hopes to provide one API that will do most of this work, and then call Direct3D or OpenGL.
Many of the original Fahrenheit projects were abandoned, and Microsoft and SGI finally succumbed to efforts to work together. Ultimately, only the scene graph section of the Fahrenheit system, known as XSG , sees the release and is stopped shortly after.
Video Fahrenheit (graphics API)
History
âââ ⬠<â â¬
In the 1990s, SGI OpenGL was the de facto standard for 3D computer graphics. Before the mid-90s, various platforms had used a variety of customized solutions, but SGI's strength in the graphics market, combined with the OpenGL Architecture Review Board (ARB) effort, led to the rapid standardization of OpenGL in most graphic workstations. market. In the mid-1990s Microsoft licensed OpenGL for their Windows NT operating system as its primary 3D system; Microsoft positioned NT as a workstation class system, and OpenGL needed to be a real competitor in this space. Initial support was released in Windows NT Workstation version 3.5 in 1994.
The bewildering thing was the purchase of RenderMorphics in February 1995 by Microsoft. Their Reality Lab product is a 3D library written specifically for game purposes, aimed primarily at the "low end" market. After changing its name to Direct3D 3.0, Microsoft released it as the main 3D API for Windows 95 and game programming. This sparked a huge debate, both on Microsoft and beyond, about the benefits of both APIs and whether Direct3D should be promoted or not.
Through the mid-90s SGI has been working on a series of efforts to provide a "higher level" API over OpenGL to make programming easier. In 1997 it has evolved into their OpenGL system, C API mode maintained above OpenGL. They propose that the modified version is used as an API over OpenGL or Microsoft's new high-performance low API (not based on Reality Lab). This will not only hide implementation details and make the OpenGL/DirectX wars useless, but at the same time offer a much better, higher-level interface to a stronger object-oriented development environment.
The OpenGL effort was dragged into ARBs until 1997. Although SGI is committed to resources for projects in order to provide examples of implementation, it seems that they are unhappy with overall progress and complain "There's been a lot of work, but relatively little communication." Microsoft has specifically stated uncertainly that they will not support the effort, and SGI feels that their support will be crucial for any move forward.
Announcement
A joint press release in December 1997, followed by an announcement at an ARB meeting in early 1998 by SGI, announced that work on OpenGL had been abandoned and SGI had partnered with Microsoft to produce a new system code-named "Fahrenheit". SGI will provide the main "medium size" APIs used in most applications, Fahrenheit Scene Graph , as well as modified versions to handle the enormous model of CAD applications, Fahrenheit Large Model . Microsoft will provide a new low-level rendering engine for Windows known as Fahrenheit Low Level , which is basically a replacement for the Direct1D version based on the Reality lab. The project was officially announced at SIGGRAPH 1998 for release in late 1999 or early 2000.
Fahrenheit became the main focus of development at SGI. Their MIPS-based workstations quickly lost the performance advantage they had in the early 1990s, and the company was in serious trouble as the average PC slowly but surely penetrated the high-end graphics market. SGI sees Fahrenheit as an exit strategy; once completed they will be able to move to PC-based lineup while still offering the best development tools for universal API now. Although no porting work begins, toolkits such as Open Inventor and OpenGL Performer are intended in the future to be superimposed on Fahrenheit, meaning that they can provide a fully functional development system for Fahrenheit when shipped, supporting both existing and new customers.
Cancellation
In 1999 it was clear that Microsoft did not intend to provide the Low Level; although officially working on it, almost no resources are dedicated to producing code. At the same time Microsoft is in the process of investing heavily in DirectX 7.0 (similar to 3.0 mainly in name only). Without the Low Level, Fahrenheit can not be delivered on Windows, and the project stops. Eventually SGI left work at Fahrenheit and began planning another Scene Graph product that was the last in a series of such projects.
In 2000 DirectX 7.0 was on the market, and proved quite popular. DirectX has been a major API during the advent of 3D games in the late 1990s. Microsoft did release the Fahrenheit Scene Graph as XSG in the same year, but did so with a note saying it would not be supported. No new versions of XSG have ever been released, and all pages associated with Fahrenheit or XSG both on the Microsoft and SGI web pages have been lost. The accelerated OpenGL support hardware is dropped from the included video drivers in Windows XP, although most video card manufacturers provide their own implementations.
Maps Fahrenheit (graphics API)
Description
Compared to Open Inventor or Iris Performer, XSG designs include some new ideas. Primitive compositions and traversal methods allow the application to build the scene in a way that best fits the visualized data structure, but then apply a scene graph optimizer to restructure the scene to make rendering more efficient without changing the scene. Developers only do what seems natural, and the system makes it work quickly.
The pipelined rendering allows multithreaded applications to construct scenes, exclude their primitives, and render them in different threads (borrow from the app-cull-draw Performer pipeline). The representation of primitive scene data is optimized to minimize the amount of data stored so as to avoid full duplication on a thread-by-thread basis.
One of the unique features of XSG is the ability to replace most of the default methods for running graphics with your own version. Developers can write new functions to quickly traverse methods they know to store data within XSG, and then chain them into existing rendering paths.
David Blythe, Fahrenheit's main architect at SGI, worked at Microsoft on DirectX until 2010. He is now Chief Graphics Software Architect at Intel.
See also
- OpenGL and Direct3D Comparison
- QuickDraw 3D
- Microsoft Talisman
References
Source of the article : Wikipedia