Как стать автором
Обновить

3D видеокарта-«декселератор» из 90-х. Как работала S3 ViRGE «под капотом»?

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров18K
Всего голосов 44: ↑42 и ↓2+60
Комментарии160

Комментарии 160

Друзья! Я запилил TG-канал, где буду потихоньку делится с вами бэкстейджем и инсайдами о новом материале. Если интересно, как происходит подготовка материалом "за кадром" - добро пожаловать! :)

https://t.me/monobogdann

Ребят, ну чего вы минусите( Это ж не канал с постоянным спамом и мусором, а просто местечко "для своих" с постами один-два раза в день=)

Чуть позже 3dfx Voodoo попробую раздобыть и написать материал о ней.

Скорее всего, про "вуду" статья будет еще подробнее - есть мысль запилить маленькую игрушку под неё и на деле показать, на что она действительно способна =)

У меня есть AGPшная. но рабочая ли - хз.

А про видеокарту которая самая правая сможете что нибудь рассказать?

ATI Rage, что-то из поздних, год 1998-1999, судя по полноценному SO-DIMM (или SIMM?) слоту для доп. памяти. Плюс есть что-то типа SLI

Это simm, только там память должна быть vram, специализированная динамическая для видеокарт. Каких-то невменяемых денег стоил такой модуль, как и карта под него..

Это не видеокарта, а специальный 3д акселератор, похож на вуду2, одним разъёмом он подключался к видеокарте, другим к монитору. Фирма которая их делала, сначала зашла на рынок аркадных автоматов, и видимо оттуда такая тема...

Это ATI Rage...

Такой же слот был на Matrox MGA-G200A. По компоновке на плате очень похоже, только чип ATI вместо Matrox.

эта voodoo вроде PCI

Эх, молодость... Радует, что в рунете еще остались олдфаги, которые помнят, какой была жизнь в прошлом тысячелетии. А то везде одни те, кто родились позже Windows XP и уже со смартфоном в заднице. Не с кем вспомнить седую древность. А я еще i286 помню и Windows 3.11!

Жаль, что в статье не все картинки подписаны. Смотришь на них и только смутно подозреваешь, что одна - это, скорее всего, PS2, а вторая - NES.

Цимес в том, что мне самому 22 - я 2001 года рождения :) Меня с раннего детства тянет к железу... причем не только программировать, но и ремонтировать/делать своё.

Вчера вышел материал про 3dfx Voodoo

Олдфаги проявились в комментах. Те, кто в живую покупали Riva TNT. Или не покупали, как я, а только облизывались.

Вы, получается, нетипичный представитель детей третьего тысячелетия, так как вы не гнушаетесь общаться с олдфагами. Для вас пропасть поколений не непреодолима.

Про вторую статью знаю. Я с нее сюда и пришел.

У вас первой иллюстрацией к Quake идет кадр из Quake 2 :) А уже потом - Q1

Вот позорник я, а! Упустил эту деталь при оформлении :)

Спасибо

Многие ли из вас застали такую легендарную видеокарту, как S3 ViRGE

Сразу вопрос: а застали ли вы? Я вот что-то не помню, чтобы её кто-то считал 3D-ускорителем, и уж тем более очень разочаровывался в свежекупленной видеокарте.

Не застал, однако несколько имею в своей коллекции.

Изображения коробки, где вендор всеми силами рассказывает о крутом 3D-движке - мало чтоле?)

точно могу сказать, что у нас S3 за ускоритель не считали, все понимали, что ускоритель - это 3dfx из двух плат, но! S3 считалась бюджетной видеокартой, дешевле и доступнее которых не было.

В мое время никто не задавался вопросом бенчмарка видеокарты, процессора - да, но видеокарты нет. Видеокарта на тот момент считалось, что должна поддерживать VESA режим (а pci уже все поддерживали) и дальше можно было д() () мать или в героев). Да сейчас понимаешь, что кроме видеопамяти, от видеокарты нужна производительность) но тогда все тормоза списывались на: мало ОЗУ и частоту проца)

А вот я видел такие обозначения, как 3d deccelerator ;) т.е 3D-замедлитель.

Если мне не изменяет память, буджетнее и доступнее в то время были PCI-ные видеокарты на cirrus logic. У самого было несколько разных. И кажется, в какой-то из них тоже был "намек" на 3Dшность. Но он не заявлялся для игр, а для CAD-овских приложений.

А как же Matrox Millenium? Из примерно тех же годов (к стати, подозрительно похож на фото Rage, что повыше в ветке)... ;) Наши конструктора все требовали "по матрасу на воркстейшн"...

То уже было в конце 90-х, приставка Millenium на это намекает. И уж "бюджетным" решением оно никогда не было. Эти карты славились замечательным RAMDAC-ом, который позволял на аналоговых мониторах, при высоких разрешениях, показывать просто идеальное качество картинки. Немудрено, что конструктора ее требовали.

Миллениум вроде в 95 году появился, а в конце уже был и миллениум2, и g200.

У меня как раз Matrox Milleniun II трудился вместе с 3dfx Voodoo (самым первым). Мне кажется они были одногодки.

S3 - компания, а не видеокарта
и говоря "дешевле и доступнее не было", вы, скорее всего, имеете в виду Trio32/64
тогда как Virge и Trio3D были именно что 3D-ускорителями, хоть и бюджетными, но подороже "просто видеокарт"
и недорогих видеокарт было больше, чем просто S3 <что-то> - всякие OPTi, Trident, интегрированные чипсеты SiS, какие-то вообще безымянные платы с 256 или 515кб памяти
</зануда_моде_офф>

Вот да, что-то из S3 Trio ставилось в простые офисные компы уже году в 1995-1996.

В офисные ставили Trio32/64 с 1Мб памяти. Virge мог иметь 4 или 8 Мб, PCI или AGP. https://www.ixbt.com/video/virgegx2.html

Да. Это сейчас во многих процессорах есть встроенное видеоядро, и видеовыходы на материнке. А тогда какая-то видеокарта была нужна всем, просто чтобы подключить монитор. Вот и покупали самое дешевое. В те времена не было равенства между видеокартой и 3D акселератором.

Нюанс в том, что S3 как раз таки предлагали дешманское устройство с хоть каким-то ускорением 3D-графики. То, что акселлератор там был медленным - вопрос другой.

Как замечено выше - никто не считал его 3D ускорителем. У меня была эта видеокарта в первом компьютере и я даже не знал что там есть какое-то 3D, всегда играл на программном рендеринге.

Это было просто самое дешманское устройство, period. Буквально самая дешевая видеокарта для работы в Винде. Нормальные 2Д-карты стоили дороже.

Ну сейчас как бы частично тоже.

Если надо более менее нормальную скорость в 3D (например потом что надо VR который не любит проседаний FPS) - надо nvidia или ati а не всякое встроенное -:)

Если от карточки надо запуск нейросетей - ну там хочется запустить https://docs.sillytavern.app/ и поиграть в текстовый чат динамический и с картинками и при этом чтобы все работало локально (читаем - LLM для текста на 7-13B параметров(ладно - 30B если у пользователя 24 Gb видеопамяти) + отдельно stable diffusion)- надо nvidia (в теории то есть rocm...в теории).

Вот я её вроде бы и застал, но правда моя жизнь стартанула с TNT2, а эти S3 видел только в офисных компах. И именовали её тогда с3 криво 3д. Но при этом ходили слухи что есть Savage и под ним UT99(тогда правда ещё 99 никто не говорил) идёт на нем прям в божественном виде. Как потом(сильно потом) оказалось для этого нужны ещё текстуры со второго диска с игрой, который найти было наверно сложней чем сам Savage. И вот за S3TC наверно таки можно вспомнить S3 добым словом.

DXT стал стандартом на многие годы :)

Правда, на мобилках его потихоньку ETC вытесняет, как и иные проприетарные форматы (типа PVRTC)

Вы путаете S3 Trio и S3 ViRGE - в вирджах, сколько помню, было две модификации - DX (PCI) и GX (AGP), а вот у трио было великое множество модификаций, и если изначальные 3D и V+ были добротными рабочими лошадками, то все остальные славились разной степенью глюкавости (что-то лечилось высверливанием "лишних" дорожек, что-то напайкой конденсаторов, что-то не лечилось совсем)

AGP живьем я никогда и не видел, а PCI валяются до сих пор для старта всяких старых материнок без наботрного видео.

Сегодня S3 Virge был поставлен в относительно свежую матплату, у которой был слот PCI. На ней был собран NAS и чтобы не тратиться на PCIe карту была установлена эта. Зачем платить больше ,если консоль будет одинаковой на любой видеокарте.

"что есть Savage" - вспомнил что у меня есть полузаброшенный ящик и там нашлось вот такая видеокарта на 16 Мб.

На другой стороне написано S3/SAVAGE4 W/16MB
На другой стороне написано S3/SAVAGE4 W/16MB

Это уже 4тый, судя по вики первый звался Savage3D вроде как на нем повяились впервые S3TC текстуры. А в 4 версии ещё пояивлось свое проприетарное API Metal.

A еще Savage2000 упоминался, который в первых пресс-релизах заходил чуть ли не как конкурент GeForce первому.

Ну я застал.(я с PC вожусть с 1989г) S3 Virge при появлении рекламировался и на нашем рынке как видеокарта с 3D. Потом уже это упоминание 3D ушло из прайслистов, когда продавцам видимо начали рассерженные покупатели предъявлять претензии.

по большому счёту, до ТНТ была первенцем рива128, но у неё было много проблем, типа virge на максималках, а у тнт уже было ПО лучше написано.

рива128 страдала из-за драйверов и совместимости, но по скорости и возможностям была достаточно близка к вуду. Но в народ нвидия всё же пошла после появления тнт2 - со всеми вантами и м64, которых китайцы за копейки продавали.

Самым первым, и провальным, ускорителем от NVidia был чип NV1. Riva128 была уже второй попыткой Nvidia, и она была коммерчески успешной.

много ты в рознице видел nv1?

в том то и дело, прежде чем пошли успешные и полууспешные было одно-два поколения провальных.

у многих фирм на этом и останавливаются, а здесь - пошли дальше и они один из двух лидеров. одному нельзя - антимонопольщики США сразу разберут на запчасти, примеров полно ATT, IBM...
почему тот же интел через 3 руки регулярно подкармливал AMD.

много ты в рознице видел nv1?

А Вы что видели что бы видеокарты провалившиеся на американском рынке, получили популярность в мире? "Нет совместимости со стандартами? Идите в сад!"

в том то и дело, прежде чем пошли успешные и полууспешные было одно-два поколения провальных.

Так и было с NVidia ;)
С NV1 и NV2 NVidia вела себя как "яхудожникиятаквижу" продвигая Quadratic Texture Maps. Но народ уже душой "прикипел" к кондовым треугольникам в 3D. И гвоздь в крышку NV1 вбила Microsoft, отказавшись включать "дичь Quadratic Texture Maps" в состав Direct3D. А SEGA даже не дала народится на свет NV2, отказавшись от этой "мегафичи" в пользу более консервативной "хны".

у многих фирм на этом и останавливаются, а здесь - пошли дальше

"Сидим мы день, сидим другой, а на третий день Орлиный Глаз
заметил, что у сарая одной стены не хватает."

и они один из двух лидеров.

А можно перечислить других участников забега? ;)

одному нельзя - антимонопольщики США сразу разберут на запчасти, примеров полно ATT, IBM...

Монополия - плохо! Дуополия и имитация конкуренции - это хорошо! :)

почему тот же интел через 3 руки регулярно подкармливал AMD.

Не будь second source в лице AMD, то Intel не светили контракты с МО США. Вот и пришлось поделится частью контрактов и прибыли. А часть прибыли, всегда больше нуля прибыли ;)

S3 Trio 64 V+

Оно таки реально умело в 3d. Просто делала этот не спеша, так сказать на чиле:)

Видели слово 3Д в названии и пытались хоть что-то из этого выжать. Потом разочаровывались.

Но зато вирдж был недорогой и на него можно было поставить относительно много памяти.

Я помню видеокарты этой серии. Никто их игровыми в здравом уме не считал, но они прекрасно подходили для офисной работы. После того, как видеокарты ISA давали 256 цветов, 24-х битный цвет этой видеокарты был просто выходом в открытый космос. Реально, был космический прорыв.

А по поводу игр, мы просто покупали Voodoo 3dfx, цепляли последовательно с этой картой и играли. Я помню, как я на первом пеньке гонял на вуде во вторую кваку и поражался невероятной графике.

Вуду ведь сильно дороже S3 стоила в момент актуальности

Вопрос не цены. Хочешь играть, покупай ускоритель. Или работай и не жужи. На самом деле, в те времена было много игр, которые не требовали 3D-графики.

Помню в те времена у игр было несколько .exe, одни для бедных с программным рендерингом в низком разрешении, и отдельные для владельцев 3dfx карт. И еще отдельный .exe для Windows 95.

И еще WinQuake, GLQuake, игры для ATI Rage и.т.п :)

Знающий товарищ вовремя посоветовал взять Riva128, и я не пожалел

да, но первое время драйвера были ещё те, точнее было отсутствие в современном понимании драйверов и без различных экстендеров (расширений) она была вирже на максималках.

позже, на тнт и тнт2 уже был полноценный комплект драйверов, с отдельными dll для винды чтобы работал ogl и dx6-dx7.

Экстендеры - это расширения OGL?

да, различные длл и exe под разные ситуации - когда необходимо поддержка чего-либо как есть. позже это всё стандартизировалось и становилось более-менее упорядоченным.

Реализация D3D была стандартизирована, OGL первых версий - тоже.

Рива 128, конечно, была сильно лучше чем вирдж, но своих косяков у нее тоже хватало. Впомнить тот же аппаратный баг с зазором по краям полигонов который частенько в играх проявлялся. Единственным беспроигрышным вариантом в то время была первая вуду.

они прекрасно подходили для офисной работы

В богатых офисах, разве что. Где победнее, там стояли S3 Trio 64V+. У «среднего класса» — с SOJ'ами ))

Ограничивающий фактор был монитор. Что толку от возможности выдавать 24-х битный цвет на более высоких разрешениях, если монитор всё равно еле-еле поддерживает 1024x768?

Я помню, что 1024х768 в те времена казалось тоже прекрасным расширением.

Ух! S3 Trio 64V+ самая уродская видюха была. Даже родные драйвера работали через раз.

а тогда все были ещё те подарки. ты матрас вспомни или Rage от ати...

матрасы могли два отдельных монитора!)))

и как много разнообразного ПО это поддерживало? вся проблема в том что сейчас это проблема ОС, как и должно быть - а то была проблема пользователя и ПО которое на этом работало.

Могли и в четыре. Но в 98 винде появилась встроенная поддержка многомониторности и тогда уже можно было просто две s3 воткнуть. Я пять пробовал, потом на меня упал монитор и я перестал дурью маяться. Но с двумя мониторами я живу ещё со времён 98.

О дааа! Они хапали одни и те же ресурсы с адаптековскими скази-контроллерами и радостно вылетали в синий экран, сообщая что "ваша программа выполнила невыполнимое и допустила недопустимое". Приходилось вручную их разводить по разным IRQ и DMA, несмотря на PnP (который на самом деле Plug and Pray)

P&P скорее про программную настройку был, чем про полноценное "воткнул и работай". Не приходилось лазить внутрь системника и джамперы перетыкать.

Хотя, конечно, временами переставить джампер было гораздо проще, чем софтом какую-то настройку поменять.

64v+ - это была стабильная рабочая лошадка для офисного компьютера. Кстати, она ещё и с досовскими играми отлично работала.

Конечно, если хотелось странного (в плане напихать много железок) - то тут уже страдания начинались от любого железа. Помнится, Козловский в Компьютерре половину своих огородов боролся за прерывания.

Видеокарты ISA прекрасно работали в SVGA режимах )

Прекрасно, но больше 256 цветов с них выжать было нельзя с каким-либо вменяемым разрешением.

800 на 600 вполне вменяемо, 1 МБ на борту, хороший рамдак и как минимум 16 бит на пиксель обеспечено.

Это невозможно, вид. Частота шины ISA была 12 МГц максимум. Даже не поленился, нашёл документацию...

Внезапно вы правы. Trident TVGA9000i-3

Открыл даташит на проц.

Но, тут вопрос ещё частоты обновления картинки. Но век живи.

Вообще это очень хорошая карта - у нее были джамперы 8/16 ISA и её можно было вставить 8 бит слот в ХТ.

Да, я бы с удовольствием такую бы заимел в хозяйстве.

С любой ISA, не только с этой. Это вы автор этой потрясающей статьи . Я помню её, это реально очень круто!!!

Нет, не с любой. :) Только с той, для которой известен процесс инициализации. Для этой он известен. Так-то он прописал в BIOS карты и его можно дизассемблировать, но игры с IDA показали, что выцарапать его оттуда не очень просто. Но возможно.

Разве не у всех ISA видеокарт BIOS мапился на память, и его можно было прочитать. От туда достать правила инициализации регистров и т.п.? Ведь, просто напросто видеокарта не стартанёт без этого BIOS.

Вот в пункте "От туда достать правила инициализации регистров и т.п.?" и есть основная проблема. Там нифига не линейная портянка. Там блоки с ветвлениями. И какое нужно будет, зависит от режимов. Сама-то видеокарта имеет множество режимов и большую кучу настроек. Поэтому выяснение настроек карты превращается в творческий процесс.

Реверс он такой, это путь с кучей приключений, бесконечного времязатратности с неясным исходом. Но, факт остаётся фактом, что достать тоже можно.

Я ничуть не умаляю крутости вашего проекта, он потрясный, и, как видите, я его помню.

Ой, да бросьте. ;) Проект совершенно примитивный. Я, если честно, абсолютно в недоумении, чем он так всем понравился. Он же совсем не сложный.

Не скромничайте. Это круто и это главное. А вам спасибо за статью.

На Авито появляются по бросовой цене т.к. никто не знает такой особенности этой видеокарты..

Пока не попадались

Отдельно я не видел, попадались в куче в лотах типа "старые компьютеры", "старые адаптеры ISA".

Выжать-то можно было - вроде и двухмеговые были.

Но вот скорость работы и качество картинки...

Логично, выше скорости ISA не прыгнешь.

С исой можно было потанцевать в плане частоты шины, особенно на 486. Но, конечно, это уже всё было за пределами штатной работы.

S3 ViRGE/DX была в моем первом ПК: 1998 год, PII-233 c 32 МБ RAM. Вполне возможно, что на поздних драйверах 3D худо-бедно работало, но мне запомнилось, что 3D-ускорение можно было увидеть только в виде цветного вращающегося кубика в настройках DirectX. В играх всё было либо крайне медленно, на уровне 3-5 FPS, либо с артефактами (белые текстуры в Carmageddon 2).
Через год мне удалось наскрести $35 на Intel 740 — небо и земля! Наконец-то смог увидеть гладкий и плавный Quake 2.

Ну, не знаю, что у Вас был за ПК в 98-м году (я тогда с первой годовой премии купил себе PII-400 + Riva TNT), но во времена актуальности DX (не GX), бета первого Халф-лайфа вполне сносно игралась на моём P MMX 233 + Virge DX (да, релизную версию уже гонял под Ривой)... а лет через пять я пересел на "интегряшки", где до сих пор и остался =)

Видимо, к тому времени появился нормальный драйвер, но я по неопытности (старшеклассник, пересевший с ZX Spectrum) разобраться с этим не сумел и наблюдал такое: https://www.vogons.org/viewtopic.php?t=70146

Вот i740 просто работал, во всяком случае в 1999 году.

на S3VirgeDX PCI 2Mb запускал Quake3demo через какой-то программный транслятор OpenGL. было 1-2fps , но тогда это было круто ! )

На первом самосборном компе была такая. Примерно 1996-1997 годы. Брал специально из-за возможности расширения памяти. Ну да, казался важным сей момент :) И расширил, и заработало благодаря покупке нескольких микросхем на местном радиорынке. NFS-2 вроде поинтереснее стала :)

Да она в NFS добавляла блики, по тем временам картинка казалась просто космической )

На PCI почти не было 3D ускорителей. Хочешь играть - нужна карта с AGP.

S3 Trio 3D/2X с AGP и 8Мб видеопамяти уже была бюджетной игровой видеокартой. Можно было в Unreal Tournament комфортно бегать. Тем более что у её владельца не было альтернативы - отсутствие OpenGL не позволяло запускать QIII.

Ну AGP было не всегда и было время когда, все работало в PCI.

А еще была VLB

VLB была слишком редкой, очень дорого и потенциально опасной.
Видео под VLB в жизни я видел только одни раз, а вот контроллеров дисков много.

Ну во времена 486 - не такой уж и редкой. У меня была.

94-й год - почти у всех были VLB - к этому моменту PCI только-только начал появляться в масс-маркете, а ISA уже вовсю стала узким местом. Вот EISA - это да, раритетная вещь... может, Вы EISA и VESA спутали?

"Когда-то этот GPU стоял чуть ли не в каждом втором офисном компьютере: благодаря дешевизне"

Это не совсем так, в то время когда карта была актуальна, она стоила сильно дороже чем S3 Trio 64, которая да была практически базовой PCI картой для офисных ПК.

В то же время Virge был дороже и сильно желаннее, т.к. позволял как минимум смотреть видео в полный экран из за наличия апаратного масштабирования.

С если в него втыкался полный комплект памяти, то позволял добавлять немного красоты в некоторые игры.

Фишку с ускорением видео просекли и в ATI, релизнув Rage с поддержкой декодирования DVD-качества видео (т.е 480p) в фуллскрине. Даже в промо об этом везде говорили))

Ну API Rage был вообще не достижимой мечтой )))
Ну а так да, он первый на котором я видел полноэкранное видео без тормозов )

У меня есть SDK для Rage. Специально сохранил для будущей статьи.

Но Rage будем щупать уже на ноутбуке скорее всего - когда-то ATI додумались сделать дискретку в виде Rage Mobility, сделав что-то типа первого игрового ноутбука :)

На Nvidia можно было запускать 3dfx через nGlide...

Да сейчас много врапперов для Glide существует.

Одной из самых лучших реализаций рейкастинга — движок Duke Nukem 3D, Build Engine, написанный Кеном Сильверманом.

Так. Уже во второй статье почему-то приписывают Duke Nukem 3D эту самую трассировку лучей. Значит, где-то такое кто-то написал, и теперь это тиражируют. Интересно, где это так написано изначально?

Всё, кажись я понял, что вопрос именно к Build Engine :)

Вообще, это было предположение именно относительно 2.5D FPS-движков в целом. Никто конкретно о рейкастинге в билде не писал, просто с применением этой техники вышло довольно много игр. Видимо я чуток облажался :( Детали реализации самого билда не смотрел, но ковырял следующий движок Сильвермана - который воксельный, занимательная штукенция.

В Build - порталы.

Так а сам метод растеризации какой? Как стенки то рисовались?)

Вот так примерно там стенки рисовались.

Портальный движок работает несколько иначе. Прежде всего, он не требует
разбиения пространства. Мы просто должны узнать, в каком из секторов
находится игрок, и имея список порталов сектора, последовательно
переходить из сектора в сектор через эти порталы. Чтобы не крутить по
кругу, стоит блокировать порталы, через которые мы уже проходили.
Алгоритм такого хождения тоже рекурсивный и тоже в результате мы
получаем упорядочивание секторов и сегментов от игрока в бесконечность.
Порталы могут быть геометрические (с помощью математики мы отрезаем
куски карты, видимые через портал (со всеми ошибками округления в
подарок)) и экранные (здесь мы корректируем левую и правую границу зоны вывода картинки на экран). Экранный портал для софтверного движка более предпочтителен, так как очень просто реализуем и работает очень быстро.
Единственная непонятная ситуация возможна, когда игрок стоит прямо на
портале. В этом случае при отрисовке этого портала границы портала не
изменяем, иначе одна из половинок окажется неотрисованной.

Метод порталов называется.

Так в Build Engine и появились воксели, но в поздних версиях движка, а Дюке их не успели использовать. В Shadow Warrior и Blood уже использовались.

Они использовались только для предметов.

Да, тоже становится грустно, почему люди не проверяют факты, которые сами же вскользь и указывают:
Wolf 3D - ray casting и DDA, ускорение относительно честного 3D происходит из-за того, что все расчеты происходят на 2-мерной карте, разделённой на прямоугольные блоки одинакового размера. Стены могут быть только кратны определённой сетке и вертикальными.
Duke Nukem 3D - portals, ускорение относительно честного 3D происходит за счет того, что отсечение происходит на 2-х мерной карте пошагово, от ближнего портала (выпуклое множество полигонов), потом следующие порталы, те, что потенциально могут быть видны из текущего и т.д. В отличие от BSP, все расчеты происходят в реальном времени, соответственно карта игры большими частями может меняться динамически.
Doom - BSP, ускорение относительно честного 3D происходит за счет того, что стационарные стены рисуются по порядку, от ближних к дальним по специальному дереву, опять же на 2-мерной карте. Стены также строго вертикальные, но уже под любым углом по оставшимся плоскостям.
Quake - честный 3D, но стационарные стены рисуются по 3-х мерному BSP на 3-х мерной карте. Отсюда ограничения, большая часть мира - статическая, т.к. BSP очень дорого рассчитывать в динамике.

Итого, из основных родоначальников жанра, только Wolf 3D использует ray casting.

Вроде на фото в статье - 2 МБ версия, с возможностью расширения до 4 МБ. Разве были 8 МБ версии S3 Virge?

У меня была такая. Сначала у меня была с3 64в+ и это была просто офисная никакая карточка, потом я накопил и купил с3 вирдж, быстро понял что это фигня. я страдал, не мог даже в нормальном разрешении играть в квейк 1 и халф, только софтваре, 320 ) у меня к тому же был К5-90 с 8 мб рам без сдрома ) а у друга П3 и рива ТНТ с сд ) еще я носил игры на дискетах (десятки дискет) и страдал )

У меня был Trident Blade 3D. Мафия пошагово проходилась)))

Понравилось. Всегда было интересно узнать, как работали с 3D-графикой в те годы, но руки разобраться не доходили. Но да, S3 игровыми почти никто тогда не считал. У меня есть несколько таких карт, знаю, каковы они.

Было бы неплохо теперь написать какую-нибудь игру или демку для этого девайса...

TNT тема. А MX200 сколько стоила на мометн покупки?)

Я брал баксов за 40-50 вроде.Год 2002.

Где-то должен лежать комп с 1000 пнем 3, GeForce 3 Ti 400, SoundBlaster 5.1.

Я летом GeForce 2 MX вытащил из ящика и использую - понадобилось старый софт запускать. Она в те времена была прошита русским шрифтом в знакогенераторе - русский шрифт есть без всяких keyrus.

(т. е. при разрешении 240х320, у нас будет 240 проходов)

Какое-то странное разрешение.

Джон Кармак умудрился реализовать достаточно быстрый софтварный
рендерер, который мог вполне сносно работать на Pentium 75Мгц в
разрешении 320x240

Минимальное и дефолтное разрешение было 320x200 и 256 цветов.

Моя очепяточка, спасибо. Привык к QVGA.

странно что вы тут отписали, но в статье до сих пор не исправили.

Минимальное и дефолтное разрешение было 320x200 и 256 цветов.

Эммм... а разве "родной" MODE 13 не 320*240*256? Пойду-ка погуглю...

Погуглил. Забавная штука память - всего 30 лет прошло, а уже "ложные воспоминания" =)

T&L (или точнее TCL), если мне не изменяет пямять, появился в GeForce256, еще до GeForce 2.

Спасибо за поправку, да, в GF256 появился T&L. T&L так и называется - Transform and Lightning, C там нет.

У GF2 появилась полноценная поддержка комбайнеров - эдакий предшественник пиксельных шейдеров тех лет. Суть заключалась в том, что программа расставляла стейты для разных текстурных юнитов, что им делать и какие операции применять (например, первый комбайнер должен смешать текстуру и освещение, второй комбайнер наложить на результат предыдущих вычислений и тем самым смешать).

А вот у GF3 появилась поддержка самых-самых первых шейдеров! :)

C -- clipping. Иногда называют так, иногда так.

Register Combiners были и на GF256, но с хардварными багами. А до этого было NV_texture_env_combine4, настройка параметров блендинга текстур. Вообще любопытно наблюдать было за развитием.

Мой первый PC был с Riva128. Я тогда даже не знал что такое это 3d и как его увидеть. Но потом случайно запустил Quake в OpenGL и как понял :) Правда почему-то все очень темно было и приходилось гамму выкручивать.

VGA предполагал как палитровый режим, так и полноценный RGB

Позвольте возразить - в VGA не было режима "RGB" - доступный максимум - 320*240*256, правда, эти 256 цветов действительно кодировались полноценной RGB-палитрой (в отличии от тех 16 цветов, доступных в более высоких разрешениях). Ну и попутно, про "программирование" 16-цветных графических режимов - это на отдельную статью (какие порты отвечают за вывод в какой слой, как переключаются отображаемые экраны/фреймбуферы, как управляется синхронизация с лучом кинескопа и т.п.). По факту, мало кто из здесь присутствующих застал "настоящий VGA" - большинство "старичков" (типа меня) начинали с SVGA, типа Trident 9000 или близких по характеристикам "церрозов" (позднее печально прославившихся VESA-версиями на безсвинцовых припоях), но так сложилось, что я и на Hercules и на CGA и на EGA успел поразвлечься всласть, в том числе и попрограммировать графику "напрямую", минуя любые библиотеки - только прямая запись в RAM и отправка команд в порты - в школьные годы любил программирование, от бейсика до ассемблеров...

Прокушал всю линейку от S3 в свое время. От Trio 64v+ до Virge DX 3D (дай бог памяти, могу ошибаться). Первые опыты по разгону и первый 3d ускоритель 3DFX, подключаемый помимо шины PCI еще и аналоговым D-Sub хвостиком =)) Классное было время. Хотя... ничего принципиально не изменилось. В те времена все геймеры спали и видели во сне Matrox Millenium - видюху со встроенным 3D ускорителем, не знающую себе равных. Как сейчас 4090, но еще и не найти нигде в продаже. Счастливых обладателей оной можно было пересчитать по пальцам одной руки. Я заимел ее значительно позже, когда она была уже неприменима к современным системам за ненадобностью - появление порта AGP и выход Riva TNT поставил крест на Matrox. Теперь храню сей музейный экспонат как память.

Подскажите, а какая модель Matrox вами считается на определенный момент как "мечта"? Просто из того с чем мне доводилось работать Matrox это в первую очередь - Autocad с хорошим ускорением рисования линий и соответствующими драйверами для DOS и двухголовый чип для вывода на два монитора. Из 3D там разве что Q2 можно было побегать, но там +- у всех всё было одинаково. Для меня знаковой стала игра SiN, я как раз покупал себе карту с 3D и мне "подсунули" i740, которую я через час вернул и взял Riva TNT (я не понимал что это, для меня что рива что i740 всё было одинаковым, но результат на экране разительно отличался).

да, на фоне зеленых и красных матрасы были прямо таки 3д-тормозителями, на G450 кваки с халвой были примерно потолком того, во что можно было играть без тормозов. но качество картинки в работе... плюс там можно было LC цепочки на выходе вырезать, чтоб они тебе сигнал не портили и получалось вообще бомба.

все геймеры спали и видели во сне Matrox Millenium - видюху со встроенным 3D ускорителем, не знающую себе равных

Матрокс был мифическим мифом во времена 2Д-графики, но вот когда пошло 3Д, про них уже никто не мечтал. У них была попытка сделать ускоритель, m3d, но из неё ничего толкового не вышло - совместимость прихрамывала, игры делали под глайд. Так что даже если бы у вас и был millenium, то пришлось бы всё равно ставить вуду к нему в пару (да и досовские игры не особо любили матроксы).

Потом пошла линейка Gxxx, у которых 3Д уже было приемлемое, но оно уступало по цене-производительности массовым видюшкам, потому всерьёз никем не рассматривалось. Ну разве что когда G200 вышла, она ещё хоть как-то себя проявляла. А всякие там G400-450-500 уже плелись далеко в хвосте прогресса.

Когда-то этот GPU стоял чуть ли не в каждом втором офисном компьютере

Не могу сказать за все офисы планеты, но в нашем городе самая ходовая в/к была S3 Trio в разных модификациях. Virge была дороже, а для офиса не давала ничего нового (800х600х24=1440000 байт) кроме редких конфигураций уже в 1024х768, где 4 Мб как бы и требуются, но вот беда, никто особо не заморачивался с 24 битным цветом, так что 1024х768х16=1572864 байт). И к моменту когда S3 Trio почти пропал в продаже и Virge стали покупать как безальтернативщину - уже было в продаже больше других брендов.

За последние 25 лет я разобрал немало старых конфигураций и Virge там сильно не на первом месте. В моем бы списке было примерно так: S3 Trio, ATI Rage, Matrox, S3 Virge.

Разные вариации S3 Trio, конечно, на первом месте, но вирдж всё же был достаточно популярен. Может быть где-то на уровне атишек и уж точно популярнее матрокса.

"Размер имеет значение!"
S3 Virge/DX катастрофически не хватало памяти в базовой (2Мб) конфигурации для 3D, фактически максимальным разрешением с 3D ускорением было 400х300. Но в полной конфигурации (4Мб)? он начинал шевелится, по тем временам на уровне "терпимо" поскольку народ еще не подозревал о "кинематографичных" 25 кадрах в секунду.

Конфигурация машины из видео

Jedi Knight: Dark Forces II - S3 Virge DX 2 Mb vs 4 Mb.

Система 486:
AMD Am5x86-P75 133@160Mhz
Spring Circle P2C (SiS 496/497)
L1-WB
L2-WT 256Kb
RAM 64Mb EDO.
VIA VT6421A + SATA + IDE PCI Controller Card
Samsung 120GB
ISA Sound Creative AWE64
PCI S3 Virge DX 4Mb 45@65Mhz

Кстати, раз пошла такая пьянка;) , а если Voodoo урезать память до двух мегабайт, то насколько упадет его производительность? :)

Потрясающий обзор! Спасибо!

VGA мог отразить весь фреймбуфер в линейную область адресного пространства.

Насколько я помню - не мог. Оригинальные ISA VGA и клоны адресовали свою память через окно 64 или 128 КБ в верху первого мегабайта.
У меня была UMC VGA с 512Кб. Она работала именно так, в принципе не могла отобразить всю видеопамять на адресное пространство. Куда она могла на ISA отобразить?
Это стало возможным только на PCI.

Ну и "свое API" режет глаз. Поправьте пожалуйста.

У меня вот такая вот есть ещё.

На работе всякое валяется

3dfx балдежная

Собрал ПК на Geforce 2MX с WinXP. Прохожу MDK-2.

Насколько игра отличается от современных "беги и стреляй". Уже приходилось читать прохождение.

Я в этих ваших игорях мало что понимаю, но может быть у игры должен быть такой геймдизайн, чтоб не возникало вопроса "куда нахрен мне идти"? Это во-первых. А во-вторых, современный ремейк System Shock не ведёт за ручку, например.

Ремейк подразумевает старый оригинал с новой графикой.
У этой игры нет вопроса "куда нахрен мне идти" - есть вопрос встать и подумать или внимательно оглядеться. А палить во все стороны не имеет смысла.

Попал в сюжете ситуацию, где разработчики явно специально предусмотрели, что игрок будет с воодушевлением расстреливать море врагов, благо оружия ему положили бесконечное количество и мощное, пока игрок не задумается почему враги не кончаются.

Ремейк это ремейк, переосмысление игры, например Resident Evil 2, 3, 4. Я сейчас прохожу четвёрку, и она даёт интересные ощущёния, что вроде все знакомое, но все равно не такое. Некоторых моментов нет, что-то добавлено. Механика боя изменена. А вот RE4 HD Remaster был ровно такой же старой четвёркой, только с чуть лучшей графикой.

Я так понимаю, Систем Шок тоже такой ремейк, вроде то же самое, но переосмысленное под современность.

Есть вещи в играх как 3D-звук, которые только в XP и в ремейке их не будет. Специального для звука поставил в конфигурацию SBLive!

С одной стороны - да. Помню как я удивился, когда купил Vortex2 и у меня в HL1 появилась опция включить A3D (или как там оно называлось?). Потом у меня был SBLive и Audigy 2, соответственно EAX2 и старше. А потом MS убили 3D звук в винде.

Но сейчас у меня акустика 5.1, и всё позиционируется как задумано. Недавно проходил Alan Wake 2, там просто шикарный саунд дизайн, очень много мелких штрихов.

Потому что 3д звук уже лет 20 софтварный.

В XP был вполне настоящий, если это Audigy или типа того. Так что не 20, а с выходом Висты.

Отличная статья! В 90-х, на Pentium 166 и 200MMX у меня была видеокарта Trio Virge от компании S3. Очень интересны такие олдскульные обзоры для тех, "кто помнит". Большое спасибо за проделанную работу!

Спасибо за теплые слова!

Зарегистрируйтесь на Хабре, чтобы оставить комментарий