ФИГЫ
Аббревиатура | ФИГЫ |
---|---|
Статус | Опубликовано |
Год начался | 1988 год |
Последняя версия | ИСО/МЭК 9592 и ИСО/МЭК 9593. 1997 и 1990 /1991 |
Организация | АНСИ , ФИПС , ИСО , МЭК |
Сопутствующие стандарты | ANSI X3.144-1988, ФИПС 153 |
Домен | 3D-компьютерной графики Интерфейс программирования приложений |
PHIGS ( Programmer's Hierarchical Interactive Graphics System ) — это стандарт интерфейса прикладного программирования (API) для рендеринга трехмерной компьютерной графики , который считался стандартом трехмерной графики с 1980-х по начало 1990-х годов. Впоследствии сочетание функций и мощности привело к появлению OpenGL , который стал самым популярным профессиональным 3D API середины и конца 1990-х годов.
Крупные поставщики обычно предлагали версии PHIGS для своих платформ, включая DEC PHIGS, graPHIGS от IBM и SunPHIGS от Sun. Его также можно использовать в системе X Window , поддерживаемой через PEX . [а] PEX представлял собой расширение X, добавляющее команды, которые пересылались с X-сервера в систему PEX для рендеринга. Рабочие станции обычно размещались в окнах, но их также можно было перенаправить на весь экран или на различные устройства вывода на принтер.
PHIGS был разработан в 1980-х годах, унаследовав многие из своих идей от Системы графического ядра (GKS) конца 1970-х годов и стал стандартом к 1988 году: ANSI (ANSI X3.144-1988), FIPS (FIPS 153), а затем ISO. (ИСО/МЭК 9592 и ИСО/МЭК 9593). Из-за своего раннего развития стандарт поддерживает только самую базовую 3D-графику, включая базовую геометрию и сетки, а также только базовые затенения Гуро , «Точки» и Фонга для рендеринга сцен. Хотя PHIGS в конечном итоге расширился и стал содержать расширенные функции (включая более точную модель освещения Фонга и отображение данных), другие функции, считавшиеся стандартными к середине 1990-х годов, не поддерживались (в частности, наложение текстур ), и многие машины той эпохи не были физически способны оптимизировать это выполнять в реальном времени.
Технические детали
[ редактировать ]Слово «иерархический» в названии относится к примечательной особенности PHIGS: в отличие от большинства графических систем, PHIGS включала систему графов сцен как часть базового стандарта. Модели создавались в хранилище централизованной структуры (CSS), базе данных, содержащей «мир», включающий как примитивы рисования , так и их атрибуты (цвет, стиль линии и т. д.). CSS-файлы могут использоваться несколькими виртуальными устройствами, известными под PHIGS как рабочие станции , каждое из которых может содержать любое количество представлений .
Отображение графики на экране в PHIGS представляло собой трехэтапный процесс; сначала модель будет встроена в CSS, затем будет создана и открыта рабочая станция и, наконец, модель будет подключена к рабочей станции. В этот момент рабочая станция немедленно отобразит модель, и любые будущие изменения, внесенные в модель, будут мгновенно отражены во всех применимых представлениях рабочей станции.
Первоначально PHIGS не имел возможности отображать освещенные сцены, и его заменил PHIGS+ . PHIGS+ работает по существу таким же образом, но добавлены методы освещения и заполнения поверхностей в 3D-сцене. PHIGS+ также представил более продвинутые графические примитивы, такие как поверхности неоднородного рационального B-сплайна (NURBS). Специальный комитет ANSI был сформирован вокруг этих предложенных расширений PHIGS, изменив его название на более описательное и (оптимистично) расширяемое название «PHIGS PLUS» - «PLUS» представляет собой слегка ироничную аббревиатуру от «Plus Lumière Und». Поверхности» (две основные области продвижения по сравнению с базовым стандартом PHIGS).
Расцвет OpenGL и упадок PHIGS
[ редактировать ]OpenGL , в отличие от PHIGS, представлял собой систему немедленного рендеринга без «состояния»; как только объект отправляется в представление для рендеринга, он по существу исчезает. Изменения в модели приходилось повторно отправлять в систему и повторно отображать — совершенно иной подход к программированию. Для простых проектов PHIGS было значительно проще в использовании и работе.
Однако «низкоуровневый» API OpenGL позволил программисту значительно улучшить производительность рендеринга, сначала проверив данные на стороне ЦП , прежде чем пытаться отправить их по шине в графический движок. Например, программист мог «отбирать» объекты, проверяя, какие объекты действительно были видимы в сцене, и отправлять только те объекты, которые действительно окажутся на экране. В PHIGS это оставалось конфиденциальным, что значительно затрудняло настройку производительности, но позволяло проводить настройку «бесплатно» в реализации PHIGS.
Учитывая низкую производительность систем той эпохи и необходимость высокопроизводительного рендеринга, OpenGL обычно считался гораздо более «мощным» для 3D-программирования. PHIGS вышел из употребления. Версия 6.0 протокола PEX была разработана для поддержки и других моделей 3D-программирования, но не вернула себе популярность. PEX был в основном удален из XFree86 4.2.x (2002 г.) и, наконец, полностью удален из X Window System в X11R6.7.0 (апрель 2004 г.). [1]
Стандарты
[ редактировать ]ИСО
[ редактировать ]- ISO/IEC 9592 Информационные технологии. Компьютерная графика и обработка изображений. Иерархическая интерактивная графическая система программиста (PHIGS).
- ISO/IEC 9593 Информационные технологии. Компьютерная графика. Языковые привязки системы иерархической интерактивной графики программиста (PHIGS).
См. также
[ редактировать ]Примечания
[ редактировать ]- ^ PEX изначально был известен как «Расширение PHIGS для X»; впоследствии именуемый «X3d», буквы которого образуют вращательный вариант букв «PEX».
Ссылки
[ редактировать ]- Часто задаваемые вопросы по comp.windows.x.pex (28 марта 1994 г.)
- Введение в PHIGS (на самом деле PHIGS+)
- ^ «X.Org Foundation выпускает X Window System X11R6.7» .
- ^ «ИСО/МЭК 9592-1:1997» . ИСО . Проверено 14 октября 2017 г.
- ^ «ИСО/МЭК 9592-2:1997» . ИСО . Проверено 14 октября 2017 г.
- ^ «ИСО/МЭК 9593-1:1997» . ИСО . Проверено 14 октября 2017 г.
- ^ «ИСО/МЭК 9593-1:1990» . ИСО . Проверено 14 октября 2017 г.
- ^ «ИСО/МЭК 9593-3:1990» . ИСО . Проверено 14 октября 2017 г.
- ^ «ИСО/МЭК 9593-4:1991» . ИСО . Проверено 14 октября 2017 г.
Внешние ссылки
[ редактировать ]- Реализация PHIGS с открытым исходным кодом с использованием OpenGL