1. Друзья, в это тяжёлое и непонятное для всех нас время мы просим вас воздержаться от любых упоминаний политики на форуме, - этим ситуации не поможешь, а только возникнут ненужные ссоры и обиды. Это касается также шуток и юмора на тему конфликта. Пусть войны будут только виртуальными, а политики решают разногласия дипломатическим путём. С уважением, администрация Old-Games.RU.

    Скрыть объявление
  2. Пожалуйста, внимательно прочитайте правила раздела.
  3. Если Вы видите это сообщение, значит, вы ещё не зарегистрировались на нашем форуме.

    Зарегистрируйтесь, если вы хотите принять участие в обсуждениях. Перед регистрацией примите к сведению:
    1. Не регистрируйтесь с никами типа asdfdadhgd, 354621 и тому подобными, не несущими смысловой нагрузки (ник должен быть читаемым!): такие пользователи будут сразу заблокированы!
    2. Не регистрируйте больше одной учётной записи. Если у вас возникли проблемы при регистрации, то вы можете воспользоваться формой обратной связи внизу страницы.
    3. Регистрируйтесь с реально существующими E-mail адресами, иначе вы не сможете завершить регистрацию.
    4. Обязательно ознакомьтесь с правилами поведения на нашем форуме, чтобы избежать дальнейших конфликтов и непонимания.
    С уважением, администрация форума Old-Games.RU
    Скрыть объявление

[Обзор] Вперёд в п(р)ошлое. TNT - Explosive disclosure

Тема в разделе "Авторская колонка", создана пользователем Goblinit, 28 авг 2015.

  1. Goblinit

    Goblinit

    Регистрация:
    18 мар 2011
    Сообщения:
    4.405
    Так и есть, это - репост моей же статьи с гиктаймс. Все права соблюдены.


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

    Краем глаза

    [​IMG]

    Перед вами снова та самая легендарная Крива, убийца 3dfx (в лице ASUS V3800PRO). Данное утверждение показалось сомнительным, потому с неё и начнём.

    [​IMG]

    Поддерживает AGP4x, а вот Sideband'а кстати у неё нет. Ну вот теперь и заценим важно всё это или нет ;)
    ...На остальные фишки типа фичеконнектора и тв-тюнера давайте положим...

    Ближе к сердцу

    Карта построена на чипе RIVA TNT2 PRO. 1999 года рождения.

    [​IMG]

    Вообще TNT - это TwiN Texel. То был первый в истории десктопов !один! чип, способный накладывать две текстуры за такт. А вот это - уже TNT2.
    Данная карта (PRO) - это как бы изначально разогнанная версия стандартного TNT2 (к слову, в ассортименте была ещё ULTRA - это как бы изначально разогнанная версия PRO). Работает на 142/166 (чип/память).

    [​IMG]

    К слову, это та самая классная видеокарта, в которой приходилось выбирать между либо честной трилинейной фильтрацией, либо мультитекстурированием. Уже страшно...
    Однако что всё это значит на самом деле и как это посмотреть на практике? С этим вот и разберёмся.

    Реализация

    Встроенные дрова в winme !очень! старые, с ними даже quake3 не запустится, сообщив, что ваш opengl устарел или попросту отсутствует.
    Драйвера от асус для тнт2 никуда не годятся. Вы только посмотрите на обилие таких понятных и доступных каждому школьнику опций, как Расширение буферной области или же Режим трансон... трапсон... чёрт...

    [​IMG]

    ОМФГ, Бедные люди! А ведь есть ещё драйвера ForceWare аж от !2005! года с поддержкой аж D3D9. Deus Ex с ними замечательно артефачит. Теперь становится понятно, почему владельцы карт так изнемогали поменять её на вуду - кажется, нормальных дров за всю историю для карты никто так и не написал.

    А ещё есть известная утилита, написанная нашим соотечественником Unwinder'ом - RivaTuner.
    Надо сказать, достойное усовершенствование серии. Как пользоваться утилитой окончательно я понял только спустя, наверное, пару суток. И то, обилие вкладок и скрытых возможностей реестра до сих пор для меня осталось загадкой... Во всяком случае, главное я получил: возможность низкоуровневого разгона карты.

    Прикладной уровень

    [​IMG]

    ВНИМАНИЕ, Конфиг:

    MB: Gigabyte 6vtxe (Apollo Pro133T chipset)
    CPU: Pentium 3-S 1.4Ghz/512Kb/133FSB
    RAM: 3x256Mb PC133
    HDD: healthy UDMA-5 WD с приличным кэшем 2Мб и 5400RPM
    WinME
    Video: Riva TNT2 PRO

    ВАЖНО:
    Все настройки графики в игре - на максимум!!! Это значит примерно следующее: если что-то красивое и/или полезное можно включить, мы это включаем.
    Карту сразу же разгоняем со штатных 142/166 почти до уровня Ultra (180/210). А Почему бы и нет? На деле разгон даст кадров 5-7. Чтож, тоже неплохо. Выше гнать не пробовал, уверен: начнёте собирать артефакты.
    Разрешение в игре для этой карты подобрал 1280x1024. Всё, что ниже, меня просто не интересует (не интересовало на момент написания абзаца). Всё, что выше, - это уже не её планка. Итак показывает меньше 30 кадров почти везде.

    Значит, поехали по технологиям.

    API и цветастость
    Карта стандартно умеет Direct3D и OpenGL.

    Чего?

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

    Nvidia позиционировала карту как мощный 32-битный конвеер. К слову, у конкурента за именем 3dfx был только 16-ти битный цвет и он пал в этой битве. Ослеп?

    Чтож, посмотрим на картинку в разных API, а заодно попробуем найти отличие между 16-битным и 32-битным цветом ;)
    Как обещал, дальше везде будут шоты с мониторингом и всеми делами, где это возможно; размеры оригинальные по клику (подписи слева внизу жёлтым - мои, признаюсь...)

    [​IMG]

    [​IMG]

    [​IMG]

    [​IMG]

    Ну что тут скажешь...

    • Во-первых, хочу заметить, что на самом деле в игре всё выглядит "несколько" ярче... Скриншоты эти честные и делаются средствами движка. Вот честно, это место было очень наглядным, правда, я старался :D
      Вообще с яркостью в игре большие проблемы. Вот то, что вы видите, это яркость выкручена на 100% По дефолту стоит 50% - понимаете? Я слышал про фикс, но вот ставить его как-то было уже поздно. Да и атмосферность хорошая... В конце концов, кому нахрен сдались эти скриншоты? И тааак сойдёт... Ладно, не расстраивайтесь, будут и ещё скриншоты.

    • Во-вторых, можно заметить разницу между 16 и 32bpp в Direct3D: если вы вернётесь к шотам, увидите страшную рябь в центре у d3d_16bpp. Такое вот качество дизеринга у TNT2. У других карт такого обычно нет.
      В OGL разницы в цвете нет вообще. Это говорит о том, что игра жульничает и всегда работает в каком-то одном режиме битности. Т. е. здесь в OGL настройка битности цвета не играет роли.
      Вообще же, если скачаете на комп и выкрутите в фотожопе яркость, увидите разницу в api. Она есть и в цвете и в прорисовке, но довольно незначительная. Так что вряд ли 3dfx тогда ослеп... вот уж не думаю.

    • В-третьих, мониторинг (справа сверху жёлтым) вы увидели только в OGL. Почему? Да потому что в те далёкие только неизвестные мне программы умели мониторить в D3Dx, который используется в Unreal Engine 1.
      Плюс к тому проц в WinME всегда загружен на 100%. Видимо, это - его кредо (проца). Достаточно войти в винду и нажать ПУСК!
      Памяти видно, что за глаза. В общем видно, что упираться нам только если в чип, так что дальнейший мониторинг бессмысленен, ну а кадры нам и сам Unreal Engine посчитать может (внизу под инвентарём белым по центру).

    AGP
    Как уже было сказано где-то там выше, карта умеет AGP4x. В то время это было новаторство. Даёт ли это что-нибудь? Мы это сейчас обязательно выясним, но для начала я "особо сведующим" приведу настройки Unreal engine-на для D3D (для OGL интересной нам опции вообще нет).

    [​IMG]

    Почитать про эти опции можно тут. Как видно, я форсировал прокачку текстур в видеопамять. Зачем? А чтобы быть уверенным, потому как в криве тнт2 всё ещё не использовался agp-texturing (DiME). Если верить слухам, AGP-aperture использовалась только как промежуточное хранилище перед отправкой текстур в локальную память. Это известная недоработка чипа и её запросто можно нагуглить.

    Ну вот, прекрасно, теперь можно начинать мерить потенцию:

    AGP2X

    [​IMG]

    Напомню: !!!FPS считается движком внизу шота!!!

    [​IMG]

    [​IMG]

    Кстати вот тут видно разницу между api. Посмотрите на отражение шара.

    AGP4X

    [​IMG]

    Заметьте, ни на один параметр скорость AGP не повлияла!! На практике:

    [​IMG]

    [​IMG]

    Ну ведь видно, что карта не выдаёт даже 35 кадров в agp2x и подъём до agp4x ничего вообще не меняет? Я очень не думаю, что не хватает серверного тулика 1.4Ghz, который, простите, вышел спустя три года. Памяти точно хватает. Соотношение FSB : DRAM - 1 : 1, и я уверен, жёсткий успевает.
    Думаю, чип просто давится и ничего тут не поделаешь. Маркетинг такой маркетинг.

    Трилинейка
    Вот тут самое интересное. Можно процитировать себя:

    Со, чудесный движок UE1 позволяет всё это проверить, не отходя от кассы. Но проверить можно только в D3Dx. В OGL мултитекстурирование через опции игры не настраивается.

    Что проверить? Ну... В TNT2 впервые была введена трилинейка. Но использовать её одновременно с мультитекстурированием чип не справлялся. А надо, ибо конкуренты! Поэтому она как бы была, но работала в двух вариантах: настоящая трилинейная фильтрация без мультитекстурирования, либо менее затратный mip-map dithering («аппроксимация», как его тогда неверно называли) и мультитекстурирование.

    Для начала попробую объяснить, что вообще такое трилинейка (может, не слишком удачно)...

    Трилинейка это развитие билинейки. Применяется только к 2D-объектам, которые находятся на расстоянии от игрока и близко друг к другу. Хорошим примером может служить, например, пол или стена, состоящие из однотипных плиточек, которые вплотную прилегают друг к другу. При отдалении от игрока плиточки должны уменьшаться (это кстати зовётся "мипмапинг"), что и происходит, но в результате уменьшения между плиточками становится заметен резкий переход, теряется однородность общей картины. Ну вот трилинейка и призвана исправить это. В общем и целом она усредняет крайние пиксели до общего значения цвета...

    Так. Это настоящая. А mip-map dithering что тогда делает?

    Объяснение mip-map dithering на примере вуду5:

    Ладно, давайте, я лучше шоты покажу... Значит, пойдём путём обзорщиков середины 90-х. Выставим 640x480. Теперь всем смотреть на сглаживание ламп на потолке в коридоре и сглаживание знака Radioactive слева от прохода!!!

    [​IMG]

    [​IMG]

    [​IMG]

    [​IMG]

    Вы тоже не видите разницы? На самом деле, она есть, просто вам нужно сейчас натянуть эти 640x480 на свой 20+ дюймов монитор и тогда справедливость восторжествует (сегодня в каждом броузере есть каретка). Понятно же, что на большом разрешении маленькие картинки все одинаковые...

    Если всё же кто натянул, тот заметил, что при включенном мультитекстурировании:
    • Падает общий уровень яркости в игре. Это известный баг движка.
    • Трилинейка с мультитекстурированием (mip-map dithering) на скринах выглядит немногим хуже билинейки. Но в игре разница будет тем заметнее, чем больше ваш монитор. Это факт.

    Вернёмся к 1280x1024.

    [​IMG]

    [​IMG]

    Ну вот тут лучше видно, как фонит mip-map dithering. Ужас, правда? Вот честно, если бы мне не сказали, я бы никогда не заметил. Моё мнение, прозвище "крива" чип получил незаслуженно. Он же не виноват, что вы играете в 640x480 в 1998 году, правда?

    И хотя выискивать огрехи mip-map dithering с лупой в 640x480 среди квадратиков мне кажется идиотизмом, всё же для тех особых случаев, которым чертовски необходимы шашечки, чтобы ехать, наш соотечественник Unwinder предлагает такое же особое решение:

    [​IMG]

    no more comments...

    Ну так вот, знаете...

    Очень достойно. 1280x1024x32bpp. 20-30fps в разогнанном состоянии. По мне, так если мышь начинает тупить в меню, а инвентарь в бою прорисовывается с задержкой в полсекунды, можно подождать. Нельзя было, например, на пентиуме 150 и 2D-видеокарте подождать своего хода в Героях3 по 5-7 минут, или, например, нельзя было подождать в Квейк 2 в коперативе, где ракеты появлялись уже потом, а задержка звука составляла около секунды. Так что 20-30 кадров - это уже вполне играбельно.

    Не нравится, не хотите гнать? Ну и играйте в 1024x768 и ниже. Или в 16-битном цвете.

    Но всё-таки, конечно, вуду3000 была быстрее, пусть и только с 22битами. Жаль 3dfx, но кое-что он всё-таки нам оставил...

    З.Ы.
    В процессе тестирования столкнулся с проблемой мониторинга. Недавно набросал кратко о том, как мониторить на Win9x/me. Всех понимающих и разделяющих (идею) приглашаю делиться опытом, ибо подобной инфы нигде вообще не нашёл (неудивительно).


    Благодарности
    • Открывателям горизонтов и срывателям покровов - комьюнити VOGONS. За кучу уникальных исследований и наработок!
    • Christian Ghisler'у низкий поклон за TC. Пользуюсь с детства. Сколько раз воспользовался синхронизацией папок за время написания не представляется конечным числом... Купил.
    • Администрации old-games.ru за возможность быстро и бесплатно скачать 20 игр скопом только ради того, чтобы заценить структуру файлов и однажды запустить. Простите за трафик ;)

    ...TBC...


    Сравнение графики в играх на разных видеочипах.

    Использованная литература
     
    Последнее редактирование: 6 сен 2015
    Колючий, TakedaSun, Thomas Wolfe и 10 другим нравится это.
  2.  
  3. Goblinit

    Goblinit

    Регистрация:
    18 мар 2011
    Сообщения:
    4.405
    Я прошу прощения, но на сайте шоты выглядят очень мелко и ни разу не увеличиваются по клику. Как будем?
     
  4. Hekk Ninja Dog

    Hekk

    Регистрация:
    18 май 2007
    Сообщения:
    4.021
    А что это? Какая то попытка воссоздать статью из старого игрожурнала той эпохи, когда массовый игрок еще интересовался железом? Там встречалось нечто подобное.
    Я бы не стал и спрашивать, но (на глаз) все это весьма объемно и непонятно зачем написано.

    Порадовало порядком подзабытое словосочетание "не хотите гнать" в контексте... Минутка 90-тых.
     
  5. Goblinit

    Goblinit

    Регистрация:
    18 мар 2011
    Сообщения:
    4.405
    Нет, это попытка сделать честный полный обзор интересной олд-геймеру железяки, и об этом написано в сумбурном начале.
     
  6. tarasb

    tarasb

    Регистрация:
    14 июл 2007
    Сообщения:
    446
    Ну на картинки посмотрел, но всё же интересно, что такое аппроксимация вместо честной трилинейки?
     
  7. Goblinit

    Goblinit

    Регистрация:
    18 мар 2011
    Сообщения:
    4.405
    @tarasb, в смысле, вас интересует техническая сторона вопроса? Тогда: настоящая трилинейная фильтрация. Ну а аппроксимация - это просто mip-map dithering. Точно такая же техника была реализована и в вуду5, вот скрин из справки:

    ahabrastorage_org_files_435_ab0_f57_435ab0f57a98477d95872a3a848f6ae2_.jpg
     
  8. BrainRipper

    BrainRipper

    Регистрация:
    1 ноя 2009
    Сообщения:
    9.210
    А почему более низкие не интересовали?
     
  9. Goblinit

    Goblinit

    Регистрация:
    18 мар 2011
    Сообщения:
    4.405
    Потому что в 2015 году я хочу играть в красивые старые игры
     
  10. BrainRipper

    BrainRipper

    Регистрация:
    1 ноя 2009
    Сообщения:
    9.210
    @Goblinit, в 1280x1024 картинка скорее всего растянется по вертикали на 6,7%, если запускать на ЖК-мониторе.
     
  11. Goblinit

    Goblinit

    Регистрация:
    18 мар 2011
    Сообщения:
    4.405
  12. BrainRipper

    BrainRipper

    Регистрация:
    1 ноя 2009
    Сообщения:
    9.210
    @Goblinit, старые игры рассчитаны на ЭЛТ-мониторы 4:3. Поэтому режим 1280x1024 был с неквадратными пикселями. А в ЖК-мониторах все пиксели квадратные, и 1280x1024 на них - уже не 4:3.
     
  13. Goblinit

    Goblinit

    Регистрация:
    18 мар 2011
    Сообщения:
    4.405
    Ок, буду знать. А как же тогда быть - 1280х960?
     
  14. MisterGrim Very old

    MisterGrim

    Legacy

    Регистрация:
    29 ноя 2007
    Сообщения:
    25.423
    Скорее наоборот, на ЭЛТ сплющится.
     
  15. Goblinit

    Goblinit

    Регистрация:
    18 мар 2011
    Сообщения:
    4.405
    Ой, други, погодите. А можно тогда ссылку на почитать про эти вот вещи (соотношение сторон на разных мониторах)?
     
  16. LANRUS

    LANRUS

    Регистрация:
    15 сен 2010
    Сообщения:
    4.621
    Не торопитесь. Всё зависит от движка конкретной игры. Если игра старая, то скорее первое. Если поновее - то вероятнее второе.

    1280x960 - до сих пор моё любимое разрешение для режима 4:3 в 2D. Именно по причине квадратных пикселей. А в 3D, к сожалению, не всякая игра его предлагает. В основном только идиотское 1280х1024. И с соотношением сторон в разных играх на этом разрешении действительно неразбериха. У кого-то это 4:3 и прямоугольные пиксели, у кого-то правильные 5:4 и квадратные пиксели.
    --- добавлено 30 авг 2015, предыдущее сообщение размещено: 30 авг 2015 ---
    Я убеждён, что в своё время глупый шаг сделать массовым 1280х1024 был чисто маркетинговым. Просто потому, что написание циферок 1280х1024 эффектнее смотрится, чем 1280х960. Когда я впервые увидел в режимах дисплея надпись 1280х1024 (даже ещё не включил), у меня всё внутри перевернулось от органического отторжения. Я не выдумываю. Я действительно помню это неприятное ощущение, как будто задницей почувствовал: что-то здесь не то, это должно быть практически квадратным. Врубил - картинка сплющилась. Посчитал пропорцию - а-а, мля, не 4:3!
     
  17. Bato-San Чеширский волк-киборг

    Bato-San

    Регистрация:
    24 июн 2010
    Сообщения:
    14.136
    ... а вы знаете, что если разогнать монитор до сверхзвука - он станет длиннее на 1 см ? :)

    Обсуждение очень похоже на http://www.ljpoisk.ru/archive/3489523.html
     
    Последнее редактирование: 30 авг 2015
  18. BrainRipper

    BrainRipper

    Регистрация:
    1 ноя 2009
    Сообщения:
    9.210
    Ещё не встречал ни одной старой игры, в которой бы на ЭЛТ в 1280x1024 картинка бы сплющилась.

    Как видно, на ЖК она растягивается по вертикали.
    as020.radikal.ru_i712_1508_8e_8b091ce26422t.jpg as009.radikal.ru_i308_1508_c6_148d43d8df62t.jpg
     
  19. LANRUS

    LANRUS

    Регистрация:
    15 сен 2010
    Сообщения:
    4.621
    Шутки шутками, а стандарт 5:4 стал отвратительным гадким утёнком. К сожалению, великое множество хороших ЖК-мониторов выпущены именно с матрицей 1280х1024. Я так ни разу ни один из них не купил и не заюзал. Это просто отвратительно. А виной всему, мне думается, было (недержание мочи) несвоевременное нетерпение производителей показать юзверям "посмотрите, уже и по вертикали 4-значное число пикселей!". У меня есть матрицы 1440х1050, 1600х1200, 1024х768. А от 1280х1024 я открестился, как от нечистой силы.
    --- добавлено 30 авг 2015, предыдущее сообщение размещено: 30 авг 2015 ---
    Ну правильно, и я так думаю.
     
  20. tarasb

    tarasb

    Регистрация:
    14 июл 2007
    Сообщения:
    446
    Я знаю, что такое настоящая. А мип-мап-дизеринг - это по очереди делается выборка из двух ближайших мипов?
    --- добавлено 30 авг 2015, предыдущее сообщение размещено: 30 авг 2015 ---
    Не факт, если в настройках видеокарты сказать, чтоб при непропорциональном разрешении она не растягивала изображение, а добавляла чёрные полосы.
    Иначе б это была вообще хана - старые игры все под 4:3, а новые мониторы все под кто 16:9, кто 16:10.
    --- добавлено 30 авг 2015 ---
    А я на работу специально такой взял. Больше строк кода по вертикали влазиет.
     
    Bato-San нравится это.
  21. BrainRipper

    BrainRipper

    Регистрация:
    1 ноя 2009
    Сообщения:
    9.210
    Вы совсем про другое пишите. Вряд ли драйвер видеокарты сочтёт 1280x1024 как разрешение с соотношением сторон 4:3. Скорее он выведет его растянутым по вертикали с чёрными полосами по бокам.
     
  1. На этом сайте используются файлы cookie, чтобы персонализировать содержимое, хранить Ваши предпочтения и держать Вас авторизованным в системе, если Вы зарегистрировались.
    Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie.
    Скрыть объявление