Немного еще посмотрел в то как именно работают палетризированные цвета в Saturn, ибо там сразу было видно, что дела обстоят непростым образом, но за ворохом слов было не очень понятно.
Оказалось что и с палитрами там всё очень сложно.
Во первых — при рендере текстурированного спрайта в 16-битный фреймбуфер данные о цвете его битмапа могут быть представлены непосредственно как 16-битные значения, а могут быть 4-битными слотами в 16-цветной палитре 16-битных же цветов. Но в любом случае во фреймбуфер попадает 16-битное данное у которого верхний бит контролирует является оно RGB или является цветом в палитре.
Так вот когда оно является цветом в палитре существует 8 глобально выставляемых форматов того какие биты в нём отвечают за:
а) номер цвета в палитре (до 10 бит)
б) порядок отрисовки между задними фонами (до 3-х бит)
в) номер расширенного вычисления цвета (до 3-х бит)
г) бит «тени»
Кроме того для 8-битного режима фрембуфера есть так же 8 форматов как эти же биты, но уже в урезанном количестве распределены по 8-битному данному о цвете в нём.
И там такая битовая мешанина из сотен регистров управляющих всякими этими битовыми комбинациями, что как говорится «без поллитры не разберешься».
Реально ловлю то же самое ощущение что было в похожем по духу эпохи 3DO — вся эта битово-палитрово-слоевая мехника переусложнена до жути.
Мегадрайв от той же фирмы был просто гимном лаконичности и простоты своей графической начинки — одна палитра, один палитровый режим и для спрайтов и для тайлов, но пасаран. Тут же прям им крышу сорвало на то как впихать в биты как можно большее число всяких палитр, режимов и цветов. Сомневаюсь что даже половина этих всех вещей была в реальности востребована.
А вот дальше еще на другом форуме подсказали, что была такая весьма забавная видеокарта как Diamond Edge 3D — согласно википедии первая видеокарта на пользовательском рынке ПК с аппаратным ускорением (95-ый год). Так вот это был некий синтез видео- и звуковых чипов из Sega Saturn в виде платы для IBM PC. И вот тут всё стало совсем интересно, ведь Diamond Edge 3D в сердце своём содержит чип NV1 который разработала, да, nVidia.
Похоже, что это был одна из первых попыток этой фирмы продвигать 3Д в массы.
В статье про Sega Saturn этому посвящена всего одна строчка (мой перевод):
Шеффилд сказал, что использование Сатурном четырёхугольников подорвало поддержку системы третьими сторонами, но поскольку «nVidia вложилась в четырёхугольники» в то же время есть «отдалённая возможность», что они смогут «стать стандартом вместо треугольников», если каким то образом, магически, Сатурн стал бы самой популярной консолью той эпохи".
И удивительно, но в русском википедии есть гораздо больше интересной информации, чем в английской: ru.wikipedia.org/wiki/NV1
Использование квадратичных поверхностей было элегантным и абсолютно новым решением в 3D-мире. Хотя теория была придумана давно, в железе такого до этого никто не делал. Главная идея заключалась в том, что в 1995 году реализовать операцию деления 1/z в железе была невероятно сложно и дорого, и в результате этого имплементировать перспективную проекцию было очень трудно. Классический подход, заключавшийся в линейной аппроксимации гиперболической функции, имел свою проблему аппроксимации в окрестности нуля и требовал сложного программного обеспечения. Квадратичная теория, использованная в NV1, аппроксимировала функцию 1/z параболической интерполяцией и такая интерполяция по качеству превосходила кусочно-линейную, которая была использована в решениях конкурентов.
…
Попытка исследовательской группы NVIDIA портировать квадратичную технологию на API Microsoft провалилась. Попытка выполнить наложения текстуры и операцию clipping приводило к уравнениям 5 степени невычислимыми в радикалах. Хотя демонстрационные примеры с квадратичными поверхностями выглядели довольно неплохо, работа с ними оказалась чрезвычайно трудной.
…
Дальнейшая разработка NV1 под новым названием — NV2 была остановлена, NV1 производство было свернуто. В 1996 году Nvidia начала разработку классического акселератора.
Хех, оказывается за этими квадратностями стояла никто иная, как сама nVidia и это был её первый блин комом.
и нормально демо показывается
Так что ктото всего лишь в конфигах наковырялся :)
xpeccy 0.6.20190301
machine=pentagon
дальше слушаем только музыку, картинка не меняется
автору эмуля багрепорт будет отправлен
через две «О»
Не, вопросов нет, релиз крутой, загрузчик и хидденпарт крутая!
Но просто интересно)
соответственно — всё разъехалось, все мультиколоры, бордюры, всё.
Пишите пожалуйста так, как будто читатели не в курсе событий на Спектрумовской сцене.
Оказалось что и с палитрами там всё очень сложно.
Во первых — при рендере текстурированного спрайта в 16-битный фреймбуфер данные о цвете его битмапа могут быть представлены непосредственно как 16-битные значения, а могут быть 4-битными слотами в 16-цветной палитре 16-битных же цветов. Но в любом случае во фреймбуфер попадает 16-битное данное у которого верхний бит контролирует является оно RGB или является цветом в палитре.
Так вот когда оно является цветом в палитре существует 8 глобально выставляемых форматов того какие биты в нём отвечают за:
а) номер цвета в палитре (до 10 бит)
б) порядок отрисовки между задними фонами (до 3-х бит)
в) номер расширенного вычисления цвета (до 3-х бит)
г) бит «тени»
Кроме того для 8-битного режима фрембуфера есть так же 8 форматов как эти же биты, но уже в урезанном количестве распределены по 8-битному данному о цвете в нём.
И там такая битовая мешанина из сотен регистров управляющих всякими этими битовыми комбинациями, что как говорится «без поллитры не разберешься».
Реально ловлю то же самое ощущение что было в похожем по духу эпохи 3DO — вся эта битово-палитрово-слоевая мехника переусложнена до жути.
Мегадрайв от той же фирмы был просто гимном лаконичности и простоты своей графической начинки — одна палитра, один палитровый режим и для спрайтов и для тайлов, но пасаран. Тут же прям им крышу сорвало на то как впихать в биты как можно большее число всяких палитр, режимов и цветов. Сомневаюсь что даже половина этих всех вещей была в реальности востребована.
А вот дальше еще на другом форуме подсказали, что была такая весьма забавная видеокарта как Diamond Edge 3D — согласно википедии первая видеокарта на пользовательском рынке ПК с аппаратным ускорением (95-ый год). Так вот это был некий синтез видео- и звуковых чипов из Sega Saturn в виде платы для IBM PC. И вот тут всё стало совсем интересно, ведь Diamond Edge 3D в сердце своём содержит чип NV1 который разработала, да, nVidia.
Похоже, что это был одна из первых попыток этой фирмы продвигать 3Д в массы.
В статье про Sega Saturn этому посвящена всего одна строчка (мой перевод):
И удивительно, но в русском википедии есть гораздо больше интересной информации, чем в английской: ru.wikipedia.org/wiki/NV1
Хех, оказывается за этими квадратностями стояла никто иная, как сама nVidia и это был её первый блин комом.
Именно таких обзоров взвесьте мне побольше, раз уж я сам не езжу больше.