Домашний компьютер № 8 (122) 2006 - pic_58.jpg

Наглядный образец реализации «физики» силами центрального процессора представляет собой игра Painkiller. Притом что эффекты в ней отнюдь нельзя назвать идеально реалистичными, да и сама игра вышла довольно давно, она является весьма тяжелой даже по меркам самых мощных современных процессоров. Иными словами, производительность в этой игре упирается в центральный процессор, даже если вы установите дорогую видеокарту, тогда как в остальных играх с упрощенной физической моделью основная нагрузка приходится на видеоакселератор. Законный вопрос: почему же, несмотря на совершенствование центральных процессоров, им все еще не по силам столь естественно-научная задача?

Дело в том, что центральные процессоры, в том числе и двухъядерные, все еще плохо справляются с обработкой большого числа самостоятельных потоков, а для физических расчетов, равно как и графических, это — принципиальный вопрос. Работу универсального процессора можно сравнить с работой справочного окошка, где берутся ответить на все вопросы. Даже если в это окошко усадить чрезвычайно сообразительного оператора, его производительность не сможет сравниться с работой нескольких окошек, в каждом из которых готовы ответить лишь на ограниченный круг вопросов.

Графические процессоры на сегодняшний день имеют до 48 конвейеров, AGEIA PhysX — 16 специализированных исполнительных модулей. Разумеется, такое количество вычислительных блоков требует весьма существенного усложнения кристалла — большого количества транзисторов и сложной управляющей логики (диспетчера) для распределения нагрузки. Учитывая, что при производстве таких чипов применяются менее прогрессивные технологические процессы, нежели для центральных процессоров, частота специализированных процессоров не превышает гигагерца. Тем не менее, на своих задачах они по производительности превосходят универсальные процессоры, как минимум, в десятки раз. И такой прирост есть смысл реализовывать с точки зрения разработчиков игр — программисты, как известно, не склонны тратить силы на оптимизацию, которая все равно не дает заметного на глаз результата. Именно поэтому массово и всерьез «затачивать» физику под двухъядерные процессоры они не торопятся, осознавая, что результат не оправдает потраченных средств. А вот в поддержку едва вышедших физических ускорителей высказались более чем дружно.

Физика сегодня

Итак, уже никто не сомневается, что будущее — за интерактивными развлечениями, и публика, с удовольствием «отведав» графических яств, пришедших в нашу жизнь с игрой FarCry и получивших логическое развитие в играх типа F.E.A.R. и многих менее громких проектах, с не меньшим энтузиазмом воспримет очередное усиление развития в сторону большей свободы действий в игре.

Но каким именно способом это будет достигнуто — вопрос на сегодня открытый. Помимо самостоятельных физических ускорителей (а кроме AGEIA, на этот сегмент никто пока не претендует), для нужд аппаратной обработки «физики» планируется задействовать видеокарты, а также ресурсы будущих четырехъядерных процессоров и даже систем с несколькими процессорами.

Домашний компьютер № 8 (122) 2006 - pic_59.jpg

Разумеется, все заинтересованные компании расхваливают свой подход, мы же, скорее всего, будем в ближайшие несколько лет наблюдать конкурентную борьбу (а возможно, и симбиоз) разных способов ускорения, из которых со временем отберется наиболее удачный. А по мере «обживания» физических движков, в играх появится возможность выбирать уровень пригодности компьютера к «физическим упражнениям», подобно тому, как сейчас мы имеем возможность регулировать графические настройки.

В пользу самостоятельных ускорителей, помимо временнуго преимущества (все остальные варианты не стоит ждать раньше осени, а наиболее вероятно — к Новому году), говорит возможность оптимизировать вычислительное ядро так, чтобы в нем не было «лишних» транзисторов. Что напрямую повлияет на «энергетическую» эффективность. В отличие от современных видеокарт, физический ускоритель на AGEIA PhysX может довольствоваться менее мощным кулером и не требует подвигов от блока питания. Цена также может оказаться привлекательной, но лишь после насыщения спроса у наиболее активных ценителей игровых новинок. В минусах — ориентация на поддержку шины PCI, уже исчезающую из арсенала материнских плат (впрочем, запланирован выход и PCI-Express-версии).

Нетрудно догадаться, что решающим фактором станет программная поддержка (или ее отсутствие) у разных аппаратных вариантов. Здесь у AGEIA на сегодня позиции также наиболее выигрышные. Хотя средства разработки — это частная собственность AGEIA, условия лицензирования весьма привлекательны. Более того: многие разработчики игр воспользовались предложением AGEIA в первую очередь потому, что программная составляющая досталась им практически бесплатно. И, что очень важно и на первый взгляд даже странно, физический движок AGEIA не требует в обязательном порядке использования одноименного ускорителя (то есть в усеченном виде вполне может существовать при поддержке лишь центрального процессора)! Учитывая, что игры без хотя бы минимально правдоподобной физической модели в скором времени могут выйти из моды, нетрудно догадаться, почему предложение AGEIA встретило такой горячий отклик.

Есть и еще два серьезных козыря (скорее даже джокера). Первый — это поддержка физического движка AGEIA в Xbox 360 и PlayStation 3 — ведущих игровых приставках нового поколения. Учитывая, что значительное число игр на сегодня — мультиплатформенные, то есть выпускаются как в расчете на ПК, так и приставки, возможность разрабатывать общую программную основу для разных платформ несомненно привлекательна. Что касается традиций ПК-платформы, как показывает практика, жизнеспособность тех или иных новаций в долгосрочной перспективе зависит от воли компании Microsoft, и уже ведутся работы над очередным дополнением DirectX под говорящим названием Direct Physics. Разумеется, до финальной версии еще очень далеко, но на сегодня доподлинно известно, что физический движок AGEIA уже лицензирован Microsoft и, несомненно, будет в том или ином виде использован. И это второй козырь, который позволит AGEIA укрепить свои позиции.

ATI + NVIDIA = Havok

Впрочем, констатировать, что остальные действующие лица индустрии игрового железа опоздали на поезд AGEIA, преждевременно. На сегодня оба основных производителя графических процессоров — ATI и NVIDIA — владеют гораздо большими ресурсами и имеют сложившуюся поддержку со стороны разработчиков игр, поэтому в долгосрочной перспективе они вполне могут опередить новичка. Графические процессоры обладают гибкой и вместе с тем многопоточной архитектурой и могут быть запрограммированы для обсчета физической модели без каких-либо перемен в «железе». Фактически, как ATI, так и NVIDIA достаточно разработать соответствующий драйвер с поддержкой новых функций, после чего видеокарта начнет помогать центральному процессору не только при наложении текстур на объекты трехмерного мира. Причем бета-версии для внутреннего тестировании и демонстрации — доступны. Оба производителя в качестве программной основы планируют использовать движок Havok FX. Показательно, что он уже используется под управлением центрального процессора во многих играх и действительно позволяет реализовывать интересные эффекты, в меру имеющихся вычислительных возможностей. Такие игры как Age of Empires III, Deus Ex: Invisible War, F.E.A.R., Half-Life 2, Max Payne 2, Medal of Honor: Pacific Assault, Painkiller, Splinter Cell 3, The Elder Scrolls IV: Oblivion, The Matrix: Path of Neo, Thief: Deadly Shadows, Tribes: Vengeance, Vampire: Masquerade Bloodlines используют программную версию Havok FX.