Комментарии 49
Друзья, с новым годом! За все время подготовки статьи я постил бэкстейдж у себя в тг. Один из читателей увидел заинтересованность в видяхах и предложил заслать isa vga видяху.
![](https://habrastorage.org/getpro/habr/upload_files/5ce/b70/cf8/5ceb70cf84f1e5481f55487d56eb0fae.jpg)
Как думаете, что это за видяшка? Явно поздняя по числу чипов, год 94 минимум
OAK Technology OTiVGA 037C 256Kb Hercules CGA EGA VGA 16 Bit ISA
Ну, кстати, я бы не назвал её совсем уж поздней. На чипах надпись 9012 - это 1990 год. Это как раз расцвет таких ISA-видюх. Ещё на ней виден второй разъём - надо полагать, это EGA.
Поздними можно назвать карты 1993-1995 годов с куда более простой схемотехникой, где часто кроме видеочипа, пары микросхем памяти и ПЗУшки с биосом ничего нет. Всякие Realtek, Trident и подобные. Многие из таких карт, кстати, весьма ценятся, так как умеют работать, будучи всунутыми в восьмибитный слот, что актуально для машин типа XT, где других слотов попросту нет. А EGA-монитор есть не у каждого.
офф. Может быть тут найдутся эксперты, которые скажут что за перемычки на видеокарте выведены на панель.
![](https://habrastorage.org/getpro/habr/upload_files/60e/099/3c5/60e0993c56bd6b0a990cdec391b6a74f.jpg)
![](https://habrastorage.org/getpro/habr/upload_files/4ab/4ba/f8b/4ab4baf8b1e3537cd318a5e58d7f4a3b.jpg)
Круть! В районе нулевых у меня была Voodoo Banshee, играл в Unreal и NFS Porshe Unleashed в глайде, и мы с братом разделяли мнение, что они выглядят красивее opengl/d3d, то ли какая цветопередача, то ли сглаживание, мы так и не поняли из-за чего.
Да, у многих было такое время. С чем связано - сам не знаю :)
Контент хорош, с наступающим!
У меня был Voodoo Rush....
Этакий мутант с 6 мб памяти, в 98 году вроде.... по моему он даже до сих пор лежит где-то))
Не было тогда компьютеров у всех подряд, а у кого были, часто не было не то что 3dfx, а даже банальной аудиокарты. Да и по ценам все это дело стоило денег.
Понравился пост. К разработке под такие железки никакого отношения я не имею, но увидеть, как оно, круто.
И материнка нашлась! Ей оказалась поздняя ECS P6IPAT на 815 чипсете с универсальным AGP-разъемом, который поддерживал все стандарты AGP одновременно.
Самое главное - не втыкать эту карту в платы по типу поздних 478 от ASRock (где были PCI-E и AGP на пару). Слот там зачем-то поставили без ключа, но уровни исключительно 1,5 В, при вставке видюхи старого образца материнка немедленно и бесповоротно сдохнет. Рядом со слотом даже написано что-то в духе "3.3 V AGP card will cause permanent damage".
Вообще, практическая часть может оказаться самым сложным тут. Когда разбираешься со старым железом, привыкаешь к тому, что очередной пункт "в принципе, там всё легко, так что разобраться не составит труда" вытягивает на отдельную статью по теме. Так что удачи в запуске этого на реальной машине. С интересом прочитаю о дальнейших успехах.
Спасибо. Скорее всего настолько длинных статей уже не будет, эта совсем не зашла и статистика очень хреновая.
А будет ещё что-то про S3? Чтобы именно какую-то игру или демку под неё написать. Сама карта и машина, куда её воткнуть, у вас, насколько помню, есть, инструментарий тоже вроде ищется. Было бы неплохое продолжение того первого поста.
Да вроде 3.5 тысяч просмотров за 15 часов - это вполне себе нормальная статистика для подобных узкоспециальных тем.
Матрицы 1х4 (вектор) вполне себе умножаются на 4х4. Там же правило MxN NxK -> MxK... Размерность одной общей стороны даёт "совместимость" для умножения.
RAMDAC производства компании ICS
GENDAC он. там унутре PLL встроенный, и аж два его выхода клочат фби и память (причем не напрямую, а тоже через фби)
возможности рисовать в отдельное окно, напоминаю, нет.
технически- есть, но не реализовано в виндовом драйвере (как и возможность выводить туда рабочий стол). если очень-очень-очень-очень хочется, наверн можно соорудить в линуксе без переписывания всего драйвера. там и рабочий стол на ней работает.
Хм, но именно с точки зрения видяхи, есть всего один контекст на все. На уровне месы можно жонглировать вьюпортами и автоматически подгонять NDC...
нет, контекст остается все еще один и весь остальной рабочий стол остается без ускорения. через LFB можно писать-читать фреймбуфер без какого-либо контекста, там можно в обход (почти) всей машинерии это делать. синхронизация только понадобится (с мезой).
а в мезе уже ограничить рендер scissor'ом или как он там тогда звался до размера окна. все равно физически там только экранные координаты поддерживаются и все надо пересчитывать.
Эээ не, так просто ридбек в какой-нибудь сурфейс там не пройдет - lfb сядет на шину при нескольких окнах. Да и что делать с разрешением? Что, если хост-приложение захочет контекст 1024х768?
Учитывая что на шине уже сидит вся геометрия и заливка текстур, если требуется.
технически максимальный размер фронтбуффера там 1024*1024. правда тогда не влезет третий буфер, а без глубины уже грустно.
если не хотим одновременно игорать и смотреть кинцо- вполне адекватно будет по нагрузке на шину, как по мне.
вот если взять voodoo2- то там даже еще веселее будет. там уже фби научился в некий аналог командбуферов из вулкана (грепни даташит по cmdfifo) и там уже точно будет упор в ожидание voodoo idle.
заливка текстур шину особо не займет- текстурной памяти очень мало. геометрия- возможно, но не уверена. вуду слишком медленно работает и там постоянно надо ждать, пока же она доделает все. в случае второй вуды там и вовсе шина может быть почти полностью свободной.
ну и pci- параллельная. какая-нибудь сетевуха/ide-контроллер/usb-хост все пожрут.
Эпоху Glide застал, но карту не имел и API не щнал. С такой концепцией оно должно было называться 2dfx.
В те годы насколько мне известно во всех десктопных видеокартах был софтварный вершинный конвейер. А вот на консолях - аппаратный, см. хотя-бы PS1.
И консоли здорово выигрывали у ПК именно по качеству графики.
А вот тут мимо. PS1 точно не выигрывала у десктопа при наличии дискретного GPU
Давайте сравнивать девайсы примерно одного периода.
PlayStation вышла в 1994.
PlayStation 2 — в 2000, это как раз эпоха становления дискретных GPU.
Ну дк 3dfx Voodoo вышла в 1996 :)
PS2 эт уже времена GeForce 2.
Странное дело, у меня воспоминания что купил 3dfx Voodoo как только завезли в Москву, мне ещё достался бракованный экземпляр, намучился - пока не додумался поменять. Но это был точно не 1996 год.
А. Понял.
Это готовый продукт Diamond Multimedia Monster 3D привезли в Москву летом 1997 года. И наверное тогда же на Кунцевской случилась первая оффлайновая встреча 3dfx.ru с пивом в парке.
Но API-то тоже не инкапсулирует это.
Можно было назвать продукт 3dfx и спрятать обработку вершин в программной части. Но нет: вот вам железо и софт для отрисовки на плоскости текстурированных треугольников
А почему тут черный треугольник https://habrastorage.org/r/w1560/getpro/habr/post_images/a89/1b1/4cc/a891b14cc7cbf77446e50032f5e60166.png хотя написано, что полностью синий экран?
Vertex v2; v1.X = 15; v1.Y = 15; может все-таки v2.x = 15; v2.Y = 15; ?
STB Voodoo 3 2000 моя первая "полноценная" видеокарта для игр. До неё была I740, на которой толком нельзя было играть. До сих пор помню, как ехал в магазин через весь город, со 100 долларовой купюрой, которую обменял на вожделенную ВУДУ.
Прикол ускорителя 3dfx Voodoo заключался в следующем. Был у меня комп Compaq Pentium 120 Mhz с 32 метрами памяти. Гоняю я там во вторую кваку и эйдж оф эмпаерс, и тут втыкаю туда вуду. И просто космос, квака вторая выглядеть стала космически, даже с трудом, скрипом идёт космический Quake III, и т.п. И это поражало воображение тех лет.
Rendition Verite 2000 была у моего товарища, и она сильно проигрывала Voodoo в сравнении. Уже не помню в чем, но в общем была хоть и дешевле, но и слабее. Насчет декодирования видео - да, помнится, я пытался посмотреть на Pentium 233MMX первое кино в формате divx с болванки, стандартным объемом в 699Мб. После нескольких неудачных попыток разгона в общем-то и так самого топового пня, я продал свой старенький комп по частям и пропил эти копейки, вспоминая относительно недавнюю итоговую стоимость всех этих комплектующих в 3500$
Не все divx были одинаково полезными. Тут не объём важен, а разрешение. Скажем что-нибудь до 300-360p - вполне 233 MMX показывал (у меня был на 225MHz - особенности материнки - не было множителя 3.5, но можно было сделать 75 на 3). Ещё помню, был фильм, который слегка подтормаживал, но если выбрать в настройках декодера звука (не спрашивайте!) не 44, а 22 kHz, то воспроизведение шло без тормозов.
Ну и декодировать divx видеокарты тех лет, на сколько мне известно, не умели. Максимум - помочь с mpeg-1. С аппаратным декодированием divx я впервые встретился в 47-м iPaq'е, но это совсем другая история.
Да, мпег умел АТИ Рейдж. Он в целом позволял смотреть фильмы в dvd качестве
Я слышал рекомендации по перекодированию в низшее разрешение. Увы, общий объем жестких в моем компе был таков, что места для операции просто не было. Системный диск Conner на 210Мб, и что-то типа Seagate на 700Мб. Conner, кстати, потом прожил еще лет 5 в каком-то олд-дос компе без ошибок, после чего помер где-то в районе середины нулевых.
Был плеер для DOS, который позволял смотреть фильмы на Pentium1
Наконец-то узнал, что такое 3D ускоритель. Ну то есть и тогда интуитивно понимал, что это не совсем видеокарта. Но вот теперь все понял.
Игровая легенда из 90-х: Как работала 3dfx Voodoo «под капотом»? Пишем 3D-приложение с нуля на Glide