Сорри если не то и не туды постю, просто толко вчера прочитал, а тут такие споры. Вообщем если не нужен текст смело стирайте:-)
Dreamcast против PC
Еще совсем недавно мы не знали ничего определенного о TNT2, GeForce 256, Voodoo3 и Savage2000. TNT был королем на PC а Nintendo64 считалась самой производительной приставкой на рынке. Прошел всего год, за это время на PC успело смениться несколько поколений акселераторов а на рынке консолей появилась Dreamcast. Уже ходят слухи о сверх мощном PlayStation II, но информации еще недостаточно даже для качественного Preview. В этой статье мы попытаемся обосновать, почему даже имея навороченный компьютер есть повод иметь дома современную консоль. При этом мы постараемся обойтись без набивших оскомину доводов вроде "на компьютере можно печатать рефераты" и "консоль стоит совсем немного".
Запад серьезно подсел на глобальный доступ в Сеть и уже совсем недолго осталось до момента, когда Интернет будет везде, куда его только сумеют пристроить маркетологи - в телевизоре, в холодильнике и во всех бытовых приборах, где это может пригодиться. PC наряду с другими "большими" компьютерами стал катализатором развития Сети. Конечно не могли обойтись без выхода в Сеть и консоли - уже на оригинальном PSX появились средства для выхода в Сеть и просмотра Web. Dreamcast пошел дальше, и теперь пользователи этой консоли в Европе и США могут без особых проблем просматривать содержимое Сети. К сожалению, Россия не придерживается той же скорости, на которой совершаются события на Западе, поэтому, даже предсказать время, когда иметь доступ в Сеть сможет хотя бы каждый второй дееспособный житель нашей державы абсолютно невозможно, тем более нецелесообразно вести речь о выходе в сеть с консолей. Для этого надо еще многое сделать. Попытаемся рассмотреть плюсы и минусы с точки зрения производительности и качества игр на PC и Dreamcast.
Начать стоит с темы, которая последнее время обсуждается повсюду - T&L. Наши читатели уже переломали себе пальцы, пытаясь доказать друг другу полезность аппаратного рассчета T&L, но при этом лишь те из них, кто занимается программированием понимают, что T&L в любой ситуации есть в игре, а спор ведется лишь о том, нужно ли переносить этот процесс в железо. Бессмысленность этого спора сегодня очевидна - это как если бы мы спорили, нужно ли переносить в железо растеризацию. Ведь никто не будет оспаривать сегодня возможности, которые дало нам аппаратное акселерирование основных функций рендеринга. Точно так же и перенос T&L в железо - рано или поздно нужно было изобрести единый стандарт, который не только позволит создание более сложных моделей, но и облегчит еще немного работу программистов, которым не придется писать софтверные T&L с нуля для новых движков. Процесс T&L не очень сложен, но крайне важен. Чем более удачный и быстрый алгоритм написан для софтверного T&L, тем более сложные модели и архитектуру можно создавать для игры в рассчете на приемлемую скорость рендеринга. Если отбросить аппаратный T&L таких плат как GeForce 256 и Savage2000, то мы увидим, как вся нагрузка по рассчету падает на центральный процессор системы. Это правило верно как для PC, так и для Dreamcast. В идеальной ситуации рассчетами в PC занимается процессор уровня Pentium III или Athlon. Каждый из них имеет свои комманды, которые при оптимизации на их использование могут существенно увеличить скорость рендеринга, иногда в разы. Но есть одно важная особенность, которая не позволяет использовать новые комманды всегда, когда этого хочется. Заметьте, мы назвали только два процессора, каждый из которых имеет свои комманды. А ведь есть еще Pentium II и Celeron, которые вообще не имеют этих расширенных комманд, а о полезности MMX уже высказался Максим Кизуб в своем тексте "Мифы 3D программирования". Разнообразие архитектур на PC имеет два ключевых аспекта - с одной стороны за счет конкуренции аппаратные возможности развиваются огромными скачками, с другой стороны еще не все технологии стандартизированы, а значит разработчик не может рассчитывать свое приложение только на использование этих комманд, в противном случае его приложение не будет коммерчески успешным.
"Коммерчески неуспешная игра" - кошмар западного девелопера. Потраченные впустую деньги на разработку, оборудование и зарплату. Неокупившаяся реклама, голодные дети программистов, художников и дизайнеров. Разорение фирмы, в конце-концов, и страшная боязнь инноваций зарубкой на носах программистов.
Это серьезно тормозит введение нововведений и отодвигает процесс адаптации к новым технологиям - ведь никто не будет переделывать ядро игры только потому, что за неделю или даже месяц до выхода в свет готового тайтла акселераторы обзавелись новой технологией, к примеру новым видом рельефного текстурирования или возможностью аппаратно рассчитывать трансформации и освещение. Вот примерные предпосылки, определяющие развитие программного обеспечения на PC. С другой стороны баррикад стоят консоли - совершенно другой класс устройств, при покупке которых никто не планирует использовать их для рисования, моделирования, печати таблиц, текстов и графиков. Значит, выбирая ядро для приставки разработчик основывается только на том, что способна эта приставка сделать с игрой. Для рассчета T&L необходима большая производительность обработки чисел с плавающей запятой. В результате, создатели "Dreamcast" выбрали для себя RISC процессор Hitachi SuperH-4. Его заявленная производительность находится на уровне 3 миллионов треугольников в секунду, при этом некоторые разработчики увеличивают это число до 4 миллионов. К сожалению, не имея сторонних тестов, эдакого "3DMark Dreamcast" нельзя делать однозначные выводы о производительности чипа. По примерным подсчетам игры для "Dreamcast", уже поступившие в продажу на Западе выдают от 2 до 3 миллионов полигонов в секунду. По этим характеристикам Dreamcast далеко опережает возможности современных процессоров, которые без специальной оптимизации способны выдавать около 1-1.5 миллиона полигонов.
С другой стороны, на рынок пришел GeForce 256 с его технологией, названной маркетологами nVidia "Графический процессор". В его заявленных характеристиках фигурировала цифра в 15 миллионов чего-то там, что многие из-за невнимательности приняли за 15 миллионов полигонов в секунду. На самом деле GeForce 256 имеет теоретическую скорость в 15 миллионов вершин в секунду. У каждого полигона мы имеем 3 вершины, а значит в самом плохом случае можно разделить число на 3. Не все так просто - можно использовать некоторые трюки в описании полигонов при программировании, что позволяет еще увеличить число треугольников в секунду, которое может вывести акселератор. В результате мы имеем от 5 до 8 миллионов треугольников в секунду в идеальном случае.
Безусловная победа PC? Не совсем. Выше мы писали о причинах, которые мешают использовать даже самые революционные фичи на PC в угоду продаваемости и скорости выпечки. Программисты для консолей имеют строгую спецификацию и знают точно, что способна выдать их приставка, а что нет. Как результат - мы имеем более детализированные игры на более слабеньких в техническом плане консолях, нежели на самом завернутом и распальцованном PC только потому, что большинство разработчиков по сей день ориентируется на софтверный T&L. К слову, работа с восемью динамическими источниками света "Dreamcast" даже не снилась. На сайте "FiringSquad" есть интересное сравнение, мы его немного переделаем для понятности. Можно представить GeForce 256 как McLaren F1 из Need For Speed, а Dreamcast - как шестисотый мерседес. Угадайте с трех раз, какая из машин будет ехать быстрее? McLaren на Каширском шоссе или Mercedes на гладкой гоночной трассе? При том что McLaren имеет больше возможностей, использовать их на пределе ему не удастся. А значит он проиграет соревнование.
Еще одной интересной технологией на PC стал bumpmapping, позволяющий относительно небольшими силами реализовать эффект, который можно достигнуть неоправданным усложнением поверхности. Одним из методов стал нашумевший летом EMBM от Matrox. Наглядный пример поддержки технологии - поддержка EMBM. Классический пример - поддерживается только Matrox, используется в лишь в нескольких играх. Проще говоря - технология есть, но ее нет, не используется. Скажем крамольную вещь - "Dreamcast" не использует рельефное текстурирование, но при этом он равен с PC, который тоже нигде кроме пары игр и горы демок bumpmapping не использует. Наверняка, вы уже готовы отписать нам самое лестное письмо, расписывающее как мы не понимаем перспективности технологий и какие мы вообще недалекие. Но идея то не в том, что BM не нужен, а в том, что нужен стандратный BM, точно так же как нужен стандартный API, стандартный T&L и много чего стандартного. Когда разработчики получат стандартный интерфейс, они смогут точно рассчитывать свои силы и планировать эффекты.
Так что же лучше? GeForce с его T&L или Dreamcast? Не все так просто, и однозначного ответа нет. И еще - "Dreamcast" появился на рынке до GeForce, и даже до TNT2. Попробуем сравнить его с Voodoo2? С TNT? Не стоит. Давайте лучше рассмотрим другие аспекты. Например растеризацию, процесс, который следует за T&L.
Для растеризации Dreamcast использует процессор PowerVR Series2, разработанный NEC в сотрудничестве с Imagination Technologies. Чип имеет скорость заполнения в 100 мегапикселей в секунду. Сравним с почти пятью сотнями GeForce или ATi Rage Maxx. Безкомпромиссный выигрыш PC? Опять не совсем. Давайте внимательно проанализируем, на что тратятся эти самые мегапикселы. Для примера возьмем и закроем ладонью глаза. Что видим мы? Всего лишь руку, да и ту с трудом. А что видит хороший мощный акселератор? Он видит комнату и руку, закрывающую глаза. А то, что он видит, он рендерит. Значит мы тратим впустую уйму ресурсов. Этот излишек, который рендерит акселератор, называется overdraw. Технология PoverVR позволяет рендерить лишь то, что мы видим. При этом эффективный fillrate можно считать равным 250 мегапикселам в секунду. Уже ближе? А будет совсем близко. Возьмем обладателя GeForce 256 DDR платы и к примеру процессора Athlon 700Mhz. Скормим ему Quake 3 и посмотрим, что он будет делать. Если юзер не опытный и не увлекается 3D шутерами серьезно, то он конечно поставит 1024x768, а то и все 1600x1200. И будет в какой-то степени прав, ведь для него это приемлемая скорость. С другой стороны Dreamcast, который подключается к телевизору. Попробуйте поставить что-то выше 640x480. Не только не поставите, даже возможности такой не будет. А значит мы имеем фиксированно низкие требования. Основной деталью маркетинговой политики разработчиков акселераторов для PC стала акселерация старых игр. Вспомните пресловутый Voodoo4/5 - 3dfx говорит: "старые игры смогут использовать антиалиасинг, старые игры пойдут быстрее..." и все в этом роде. Мы уже не раз писали, что увеличение скорости заполнения не увеличит детализации новых игр, а лишь ускорит старые. Много интересного по этому поводу можно прочесть в интервью западных разработчиков о "T&L против Fillrate" на страницах нашего сайта.
И опять о антиалиасинге. Тема больная - половина Рунета спорит в попытках доказать необходимость (бесполезность, нужное удалить) аппаратного сглаживания. Многие придерживаются точки зрения, что вместо сглаживания нужно увеличить разрешение, и дефектов будет не видно. В любом случае и те и другие за метод, повышающий требования к производительности акселератора. Особенно неприятно играть в низких разрешениях владельцам огромных мониторов. Проблема в нескольких вещах - во первых на мониторе маленькая точка, а значит все очень четко и хорошо видно, во вторых пользователь редко сидит на расстоянии дальше метра от экрана, то есть практически в упор. Теперь вспомним приставку. Подключается к телевизору с большой точкой, человек как правило сидит в 3-5 метрах от экрана в удобном кресле, благо провода позволяют. В результате телевизор осуществляет сглаживание а расстояние скрадывает детали. Хоть один любитель консолей жаловался на алиасинг? А ведь в консоли играют и дизайнеры, и художники да и просто любители хорошо поиграть. К тому же известно, что рынок игр для консолей существенно больше рынка игр для PC. Каждая аппаратная платформа накладывает свои условия на игры и на качества графики. Что хорошо для консоли, то плохо для PC и наоборот. Да к примеру взять выводимые FPS. Редкий телевизор может выдать более 50Hz, особо дорогие модели показывают имеют развертку в 100Hz. Вы не увидите больше кадров, чем может показать вам телевизор. Кстати, и к монитору это тоже относится - получив в 1600x1200 на GeForce 256 в Quake 2 на Athlon 650 около 73-75 fps в High Color вы их не увидите, ведь развертка хилого монитора 21` - 60Hz. Посмотрите характеристики своего монитора и проанализируйте, а видите ли вы эти FPS, или они тратятся впустую?
И это только вершина айсберга. Возьмем к примеру количество видео ОЗУ - на современном акселераторе считается модным иметь 32Мб RAM, в то время как Dreamcast оборудован 8Мб и ему их вполне достаточно. Почему достаточно? Давайте рассмотрим, зачем нам нужна видео память. Во-первых для буфера кадров, и чем больше памяти мы отдадим, тем бОльшее разрешение сможем поставить. Стоп. Зачем нам большее разрешение на телевизоре? Ну ладно, скажите вы, пусть нам не нужно большое разрешение, давайте загрузим текстуры. Немного поместится в 8Мб. И тут вы окажетесь не совсем правы - в Dreamcast используется текстурное сжатие, по эффективности равное S3TC. Называетс оно "Vector-Quantization Texture Compression" и позволяет сжать текстуры с коэффициентом 1:4, а значит эффективный обьем памяти для текстур мы увеличим в 4 раза, что составит те же самые 32Мб.
Но позвольте, а как же S3TC, DXTC и другие FXT1? Ведь акселераторы на PC так же работают с компрессией текстур. И опять приверженцы PC сядут в эту лужу с "коммерчески успешными" продуктами. Какие акселераторы поддерживают сжатие текстур? S3 Savage3D и Savage4 поддерживают S3TC. Savage3D назвать нормальным акселератором уже нельзя. GeForce поддерживает DXTC (это не S3TC, а значит игры, с поддержкой S3TC на GeForce никаких плюсов не имеют). Rage128 и Rage MAXX тоже поддерживают DXTC. И все. Хватит пальцев на одной руке, чтобы пересчитать акселераторы с поддержкой текстурного сжатия. Первая игра, которая использует текстурное сжатие - Unreal Tournament, содержит текстуры на втором диске и работает с ними через Metal - специальный API S3, который, кстати, уже не поддерживается даже их собственным S3 Savage2000. Мертворожденная технология. Нет сомнений, что DXTC получит развитие, и со временем 32Мб акселераторы смогут держать в памяти до 100Мб текстур. Но сегодня этого нет. Мы опять вернулись к тому, с чего начали - шестисотый мерседес на треке и McLaren на обычном шоссе. Для вдумчивых - Dreamcast, подключенный SVHS кабелем обеспечивает качество изображения, которое можно получить при просмотре DVD. Вы задумывались над этим? Может стоит перестать наращивать разрешение и начать усложнять геометрию, текстуры? Довести динамический рендеринг к качеству статического предварительно оциврованного фильма? Интересный вопрос.
Мысль на закузку - игра "Messiah" использует динамическую тесселяцию моделей, то есть для получения приемлемой скорости на PC качество моделей урезается в угоду скорости, а значит при определенных условиях вы увидите на экране тако-о-е, чего сами разработчики не видели в самых ужасных снах. В то же время "Dreamcast" всегда одинаков, не может иметь больше памяти и более быстрый процессор. Никакой динамической тесселяции - мы знаем, что у нас есть, и это будем использовать. И ни на йоту больше.
Еще одна больная тема для PC - глубина цвета. В момент написания статьи рядом играют в "Master of Orion II". Низкое разрешение, 256 цветов. Но какие впечатления. На Dreamcast всего 16-ти битный цвет, но этого хватает. Постойте, не спешите грузить свои аутлуки и другие мылеры - мы не сошли с ума и не обчитались пропаганды 3dfx. В чем дефект 16-ти бит? Где он возникает? Вы пытались это проанализировать?
Реальность такова - основные проблемы при 16-ти битах возникают при использовании мультитекстурирования, то есть когда одна текстура накладывается на другую, а сверху еще и еще. Получившееся изображение в некоторых случаях совершенно неправильно обработано. Если приводить сравнения, то это похоже на видеокассету, копию/копии/копии/копии которой вы смотрите. И тут Dreamcast просто прекрасен - запись в буфер кадра произходит в последний момент, уже после того, как проведены все операции над текстурами, а результирующий результат в 16-ти битах при квадротекстурировании сравним с результатом на PC без мультитекстурирования вообще. И снова не стоит забывать о том, как далеко от телевизора вы сидите и как он сглаживает изображение.
Выводы таковы. Если сравнивать каждый технический аспект чипа с технологией PoverVR с GeForce 256 или ATi Rage MAXX, то проигрыш PoverVR будет однозначным. Однако в совокупности, обьединенные в приставке технологии и возможности телевизора, плюс условия при которых идет игра позволяют Dreamcast если не обойти, то точно держаться на равных с PC.
Звук и управление
. Звуковым ядром Dreamcast служит Yamaha-вский "Super Intelligent Sound ASIC". Что интересно, разработки Yamaha для PC не очень знамениты своими возможностями, а в Dreamcast все на уровне - 64 звуковых аппаратных потока, полная поддержка качественного XG-MIDI с 2Мб для сэмплов, позиционируемый алгоритмами Q-Sound звук, который конечно не сравнить с A3D 2, но тоже не так плохо. Кроме того, в Dreamcast заключен Burr-Brown DAC. Известно, что Burr-Brown выпускает различные DAC - как нацеленные на рынок супер-дешевых попсовых изделий, так и на рынок референс-звука. Точной информацией о модели чипа мы не располагаем, однако субьективно чип на высоте и звук, получаемый через него очень неплох по сравнению с качественным звуком из дорогих звуковых плат на PC. В целом, если вы не профессиональный меломан, и не используете на PC к примеру такие навороты как Burr-Brown PCM1704 DAC, то качество звука Dreamcast вас вполне устроит.
Управление - это даже не вопрос для обсуждения. Можно прикрутить на PC все что угодно, но основными устройствами остаются мышка и клавиатура, которые в идеале подходят для таких жанров как FPS (First Person Shooter, не путать с Frames Per Second), статегий и квестов. Консоль традиционно комплектуется геймпадом, предназначение которого - аркады, аркады и только аркады. Можно подключить руль и насладиться гонками, а вот с симуляторами сложно - даже хороший джойстик не обеспечит возможностей полноценного управления самолетом. Поэтому симуляторов на приставках почти нет.
Мы рассмотрели технические и теоретические аспекты производительности Dreamcast и PC. Однозначный вывод сделать невозможно - прогресс технологий PC достоин всяческого уважения, а монолитность дизайна Dreamcast позволяет получить во многом более удачный игровой экспириенс.
Не каждый в нашей стране может себе позволить приобрести лицензионные диски для Dreamcast. Именно это сдерживает продажи этих консолей в России. Впрочем, как видно на примере PSX, рано или поздно наступает момент, когда миллионы шустрых китайцев желая делать деньги заваливают рынок своими копиями. Так произошло с VideoCD, CD-ROM и AudioCD, так будет и с DVD и другими носителями информации. В дальнейшем мы постараемся дополнить этот материал примерами из реальных игр - это поможет лучше понять, что же предпочтительнее и в каких жанрах консоль лучше или хуже PC. А пока постарайтесь понять, что не железо делает платформу удачной, а софт, то есть в нашем случае это игры.
Источник