화씨(그래픽 API)
Fahrenheit (graphics API)Fahrenheit는 Direct3D와 OpenGL을 통합하기 위해 3D 컴퓨터 그래픽을 위한 통합 하이 레벨 API를 만들기 위한 노력이었다.그것은 주로 마이크로소프트와 SGI에 의해 설계되었으며 HP-MS 공동작업도 포함되었다.
Direct3D와 OpenGL은 주로 3D 렌더링 파이프라인의 렌더링 단계에 집중하는 로우 레벨 API이다.이러한 API를 사용하는 프로그램은 파이프라인의 나머지를 처리하기 위해 상당한 양의 코드를 제공해야 한다.Fahrenheit는 이 일의 대부분을 할 수 있는 단일 API를 제공하고, 그리고 나서 Direct3D나 OpenGL에 전화를 걸어 마지막 단계를 하기를 원했다.
원래의 파렌하이트 프로젝트의 많은 부분이 포기되었고, 마이크로소프트와 SGI는 결국 협력하려는 시도를 포기했다.결국 XSG로 알려진 화씨계통의 장면 그래프 부분만 출시를 보았고 얼마 지나지 않아 단종되었다.
역사
배경
1990년대에 SGI의 OpenGL은 3D 컴퓨터 그래픽의 사실상의 표준이었다.90년대 중반 이전에는 서로 다른 플랫폼들이 다양한 사용자 정의 솔루션을 사용했지만, 그래픽 시장에서 SGI의 힘은 OpenGL Architecture Review Board(ARB)의 노력과 결합되어 대부분의 그래픽 워크스테이션 시장에서 OpenGL의 빠른 표준화를 이끌었다.1990년대 중반, 마이크로소프트는 윈도우 NT 운영 체제를 기본 3D 시스템으로 OpenGL에 라이센스를 부여했다. 마이크로소프트는 NT를 워크스테이션급 시스템으로 포지셔닝하고 있었고, 이 분야에서 진정한 경쟁자가 되기 위해서는 OpenGL이 필요했다.초기 지원은 1994년에 윈도 NT 워크스테이션 버전 3.5에서 출시되었다.[1]
혼란스러운 문제는 마이크로소프트가 1995년 2월 렌더모픽스를 구매한 것이었다.[2]그들의 Reality Lab 제품은 주로 "로우엔드" 시장을 목표로 하는 게임 목적으로 특별히 제작된 3D 라이브러리였습니다.마이크로소프트는 다이렉트3D 3.0으로 이름을 바꾼 뒤 윈도 95용 기본 3D API와 게임 프로그래밍으로 출시했다.이는 마이크로소프트와 외부 모두에서 두 API의 장점과 Direct3D의 추진 여부에 대한 대규모 논쟁을 촉발시켰다.[3][4][5]
90년대 중반까지 SGI는 프로그래밍을 더 쉽게 하기 위해 OpenGL 위에 더 높은 수준의 API를 제공하기 위한 일련의 노력을 해왔다.1997년까지 이것은 OpenGL++ 시스템으로 진화했고, OpenGL 위에 유지 모드 C++ API가 있다.이들은 개정한 버전을 OpenGL이나 마이크로소프트가 작업 중인 것으로 알려진 새로운 고성능 로우 레벨 API(Reality Lab을 기반으로 하지 않음) 위에 단일 API로 사용할 것을 제안했다.이는 구현 세부사항을 숨기고 OpenGL/DirectX 전쟁을 불필요하게 만들 뿐만 아니라, 동시에 보다 강력한 객체 지향적 개발 환경을 위해 상당히 더 나은 높은 수준의 인터페이스를 제공할 것이다.
OpenGL++의 노력은 1997년까지 ARB에서 질질 끌었다.SGI는 샘플 구현을 위해 이 프로젝트에 자원을 투입했지만 전반적으로 진척상황에 불만을 품고 "일이 많았지만 상대적으로 소통이 적었다"[6]고 불만을 토로한 것으로 보인다.특히 마이크로소프트는 이러한 노력을 지지하지 않을 것이라고 분명히 밝혔고, SGI는 그들의 지원이 앞으로 나아가는 어떤 노력에도 필수적이라고 생각했다.
발표
1997년 12월 공동 보도 자료에 [7]이어 1998년 초 SGI의 ARB 회의에서 발표한 내용에 따르면,[8] OpenGL++에 대한 작업은 중단되었고 SGI는 마이크로소프트와 제휴하여 코드명 "Fahrenheit"로 명명된 새로운 시스템을 생산했다고 발표했다.SGI는 대부분의 애플리케이션에서 사용되는 기본 "중형" API인 Fahrenheit Scene Grand Model과 [9]CAD 애플리케이션에서 매우 큰 모델을 처리하기 위한 수정된 버전을 제공하는 것이었다.마이크로소프트는 파렌헤이트 로우 레벨로 알려진 윈도우용 새로운 로우 레벨 렌더링 엔진을 제공할 것이며, 이는 기본적으로 리얼리티 랩 기반 Direct3D의 대체품이다.[10]이 프로젝트는 1999년 말이나 2000년 초에 출시하기 위해 SIGGRAPH 1998에서 공식적으로 발표되었다.[11]
Fahrenheit는 SGI에서 주요 발전의 초점이 되었다.그들의 MIPS 기반 워크스테이션은 1990년대 초 그들이 가졌던 성능의 우위를 빠르게 잃고 있었고, 평균 PC는 느리지만 확실히 고급 그래픽 시장을 잠식해 심각한 곤경에 처했다.SGI는 Fahrenheit을 출구전략으로 보았다; 일단 완성되면 그들은 PC 기반 라인업으로 이동할 수 있을 것이고, 동시에 여전히 현재 보편적인 API를 위한 최고의 개발 도구를 제공할 수 있을 것이다.비록 포팅 작업이 시작되지는 않았지만, Open Inventor와 OpenGL Performer와 같은 툴킷은 미래에 Fahrenheit에 레이어드할 계획이었다. 이는 그들이 화씨에서 선적할 때 하나의 완전한 기능 개발 시스템을 제공하여 기존 고객뿐만 아니라 새로운 고객 모두를 지원할 수 있다는 것을 의미한다.[10]
취소
1999년까지 마이크로소프트는 Low Level을 제공할 의사가 없다는 것이 분명했다; 비록 공식적으로 그것을 작업하고 있지만, 실제로 코드를 생산하는데 사용되는 자원은 거의 없었다.[11]동시에 마이크로소프트는 DirectX 7.0에 대규모 투자를 진행 중이었다(대부분 명목상으로만 3.0과 유사).Low Level이 없으면 화씨(Fahrenheit)는 윈도우에서 배달될 수 없었고, 프로젝트는 중단되었다.결국 SGI는 화씨[12] 작업을 포기하고 일련의 프로젝트에서 마지막이 된 다른 장면 그래프 제품들을 기획하기 시작했다.
2000년까지 DirectX 7.0이 시장에 출시되었고, 꽤 인기를 증명했다.다이렉트X는 1990년대 후반 3D 게임이 부상하는 동안 주요 API가 되었다.마이크로소프트는 같은 해 화씨 장면 그래프를 XSG로 출시했지만, 지원되지 않을 것이라는 쪽지와 함께 출시했다.XSG의 새로운 버전은 공개되지 않았으며, 이후 마이크로소프트와 SGI 웹페이지의 Fahrenheit 또는 XSG와 관련된 모든 페이지는 사라졌다.대부분의 비디오 카드 제조업체에서 자체 구현을 제공하지만, 하드웨어 가속 OpenGL 지원은 Windows XP에서 포함된 비디오 드라이버에서 제외되었다.
설명
Open Inventor나 Iris Performer와 비교했을 때, XSG의 디자인에는 몇 가지 참신한 아이디어가 포함되어 있었다.구성 원시 요소와 통과 방법은 애플리케이션이 시각화되는 데이터 구조에 가장 적합한 방식으로 장면을 구성하도록 허용했지만, 씬(scene) 그래프 최적화 도구를 적용하여 씬(scene)의 외관을 변경하지 않고 보다 효율적인 렌더링을 위해 씬(scene)을 재구성할 수 있도록 했다.개발자는 자연스러워 보이는 것은 무엇이든지 간단히 했고, 시스템은 그것을 빨리 작동하게 만들었다.
파이프라인 렌더링은 다중 스레드 응용 프로그램이 장면을 구성하고 원시 요소를 도태한 다음 다른 스레드로 렌더링할 수 있도록 허용했다(Performer app-cull-draw 파이프라인에서 대여).원시 씬(scene) 데이터의 표현은 저장되는 데이터의 양을 최소화하여 스레드 단위로 완전히 복제되지 않도록 최적화되었다.
XSG의 독특한 특징 중 하나는 그래프를 걷기 위한 대부분의 내장 방법을 자신만의 버전으로 대체할 수 있는 기능이었다.개발자는 XSG 내부에 데이터를 저장하는 알려진 방법을 신속하게 통과시키기 위한 새로운 기능을 작성한 다음 이를 기존 렌더링 경로에 연결할 수 있다.
SGI의 Fahrenheit의 일차 설계자인 David Blythe는 2010년까지 DirectX에서 마이크로소프트에서 일했다.그는 또한 인텔의 최고 그래픽 소프트웨어 설계자였다.
참고 항목
참조
- ^ PC 매거진, 1994년 12월 20일
- ^ "RenderMorphics and Reality Lab History". Qube Software. Archived from the original on 2008-12-23. Retrieved 2009-01-25.
- ^ Thurrott, Paul (July 16, 1997). "Open GL vs. Direct3D: the debate continue". Windows IT Pro. Archived from the original on February 5, 2010. Retrieved 2009-01-25.
- ^ Thurrott, Paul (July 21, 1997). "Direct3D vs. OpenGL continues: id and Alex St. John strike back". Windows IT Pro. Archived from the original on February 5, 2010. Retrieved 2009-01-25.
- ^ Microsoft 및 3D 그래픽: Wayback Machine에서 2007년 10월 23일 보관된 혁신 및 경쟁 억제 사례 연구
- ^ "OpenGL ++ ARB Interest Subcommittee Meeting Notes". OpenGL. June 6, 1997. Retrieved 2009-01-25.
- ^ "Silicon Graphics and Microsoft Form Strategic Alliance To Define the Future of Graphics". MOUNTAIN VIEW, Calif.: Microsoft. 1997-12-17. Archived from the original on 2009-01-22. Retrieved 2009-01-25.
- ^ Leech, Jon (March 9–10, 1998). "ARB Meeting Notes". Salt Lake City, UT: OpenGL. Retrieved 2009-01-25.
- ^ Dana, Jenny (September 1998). "APIs of the Fahrenheit Initiative". Silicon Valley. SIGGRAPH. Archived from the original on 2007-08-07. Retrieved 2009-01-25.
- ^ a b Fahrenheit FAQ, Wayback Machine의 SGI FAQ 아카이브
- ^ a b "What is/was Fahrenheit?". DirectX.com. Archived from the original on 2008-04-21. Retrieved 2009-01-25.
- ^ "HP Readies Fahrenheit Graphics Engines". Computergram International. 1999-10-19. Retrieved 2009-01-25.