Новости про OpenCL и PhysX

NVIDIA отвечает на вопросы о PhysX

В официальных форумах NVIDIA сотрудники корпорации ответили на ряд вопросов пользователей о PhysX.

В ходе компании «Would you like to Ask Nvidia A question?», проводимой в форуме NVIDIA, стали известны мнения некоторых сотрудников NVIDIA о перспективах развития и поддержки технологии NVIDIA PhysX.

Будет ли PhysX конкурентоспособна в мире DirectX 11/OpenCL?

Ответил Том Петерсен, директор по маркетингу технологий: PhysX не конкурирует с OpenCL или входящим в состав DX11 DirectCompute.

PhysX прежде всего интерфейс программирования и среда исполнения для моделирования игровой физики в компьютерных играх. Представьте PhysX как уровень над OpenCL или DirectCompute, которые в свою очередь являются низкоуровневыми интерфейсами для вычислений с помощью графических процессоров. Разработчики игр не создают контент на уровне OpenCL или DirectCompute, они творят, используя наборы инструментов (в том числе и предоставляемые NVIDIA), позволяющие создавать быстро. Как только у них получается качественный контент, они «компилируют» его под конечную платформу (будь то персональный компьютер или игровая приставка) используя другие инструменты.

В этом процессе студии исходят из трёх основных вопросов:

  1. Облегчает ли использование PhysX создание игр для любых платформ, включая консоли?
  2. Позволяет ли PhysX с легкостью включить сногсшибательные эффекты в игру?
  3. Поддержит ли NVIDIA усилия по внедрению данной технологии?

И ответ на все три вопроса следующий: да, да и еще раз — да. Мы тратим наши время и деньги на удовлетворение данных потребностей разработчиков, и в настоящее время сообщество игроделов не требует от нас поддержки OpenCL и DirectCompute.

В конечном итоге, успех PhysX как технологии будет зависеть от того, насколько легко её будет использовать разработчикам и насколько невероятные эффекты можно будет с ней создать. Игра Batman: Arkham Asylum является хорошим примером, каких эффектов можно достичь при использовании PhysX совместно с графическими процессорами NVIDIA, и мы работает над следующим поколением еще более неотразимых игр. В настоящее время NVIDIA не рассматривает возможности по миграции с CUDA на OpenCL или DirectCompute в качестве исполнительного движка для использования ускорения графических процессоров. Мы предпочитаем поддерживать разработчиков во внедрении поразительных спецэффектов.

Будет ли открыт исходный код PhysX?

Ответил Том Петересен: NVIDIA вложила огромные средства и время в PhysX и мы не планируем сегодня делать её общим достоянием. При этом, бинарные модули SDK доступны бесплатно и исходный код может быть лицензирован разработчикам игр, будь у них такая потребность.

Правда ли, что NVIDIA предлагала ATi получить PhysX при условии самостоятельного написания драйвера и осуществления поддержки пользователей? Или ATi правы в утверждениях, что NVIDIA сразу заявила, что никогда не позволит PhysX работать на графических процессорах ATi? Какова официальная позиция NVIDIA по вопросу разрешения ATi бесплатно создать драйвер для работы PhysX на их графических процессорах через OpenCL?

Ответил Джейсон Пол, менеджер продуктов GeForce: Мы открыты для лицензирования PhysX, и уже сделали это для целого ряда платформ, достаточно упомянуть PS3, Xbox, Nintendo Wii и iPhone. Мы желали бы сотрудничать и с AMD, если бы видели такое же желание с их стороны. Мы не можем раздавать технологию PhysX «бесплатно» по тем же причинам, по которым лицензии на Havok или архитектуру x86 не раздаются всем желающим безвозмездно — технология дорого обходится в разработке и поддержке. В целом, мы готовы лицензировать PhysX любой компании, которая сделает нам достаточно серьезное предложение.

NVIDIA также поддерживает движок Bullet Physics

На прошлой неделе AMD сообщила о начале сотрудничества с Pixelux Entertainment с целью ввести поддержку аппаратного ускорения в физический движок с открытым кодом Bullet Physics, который занимает третье место (около 10 %) по популярности среди разработчиков. Движок будет переписан для работы с открытым API OpenCL, то есть, в отличие от PhysX, движок Bullet будет работать как на картах ATI, так и NVIDIA.

Журналисты сайта Icrontic обратились к руководителю технического маркетинга NVIDIA Тому Питерсену с целью узнать, что сможет изменить движок Bullet в политике компании и на рынке в целом.

Icrontic: Собирается ли NVIDIA поддерживать Bullet Physics, ведь он основан на открытых индустриальных стандартах, поддерживаемых NVIDIA?

Том Питерсен: NVIDIA поддерживает Bullet (мы встретились с Эрвином на технологической конференции по видеокартам). Мы приветствуем любые программы или API, которые помогают кому-то более эффективно использовать GPU. По существу, по словам Эрвина, он использует видеокарты NVIDIA для разработки своего кода. По этому поводу он даже предоставил нам цитату:

«GPU-ускорение Bullet с помощью OpenCL будет работать с любыми совместимыми драйверами, для нашей разработки мы используем видеокарты NVIDIA GeForce и даже употребляем примеры кода из их OpenCL SDK, они замечательный технологический партнёр.

Эрвин Камэнс, Создатель движка Bullet Physics».

Icrontic: Какую помощь, если она есть, NVIDIA намерена предоставить проекту Bullet Physics?

Том Питерсен: Мы будем продолжать оказывать любую помощь, которая в наших силах, для команды Bullet. В настоящее время они используют драйвер OpenCL, предоставленный NVIDIA.

Icrontic: Как по мнению NVIDIA повлияет создание третьего физического движка на потребителей?

Том Питерсен: NVIDIA продвигает использование GPU для улучшения игрового процесса на ПК. Если Bullet сможет сделать то же для некоторых разработчиков в некоторых играх, то мы поддерживаем это. Одновременно, NVIDIA продолжит вводить новшества в PhysX на своих видеокартах. Мы предоставим комплексное решение, включающее инструменты разработки, настройки производительности, управления информационным содержанием и поддержку разработчиков — это даст весомые преимущества пользователям нашей продукции, как в случае с игрой Batman Arkham Asylum.

Icrontic: Bullet — это «правильный ответ» на несовместимость между PhysX и Havok?

Том Питерсен: Я не думаю, что это единственное решение. Каждая реализация физики имеет свои сильные стороны. Позиция NVIDIA заключает в том, что хорошая производительность и комплексное решение необходимы, чтобы предоставить мощное решение. Мы много уделяем внимания нашей разработке APEX (среда разработки, позволяющая реализовывать эффекты разрушений, воздуха, одежды, растений, а также инструменты отладки), чтобы сделать использование PhysX для разработчиков более простым. Если говорить коротко, то NVIDIA инвестирует средства в интеллектуальные разработки, и мы поддерживаем независимые инициативы, делающие то же самое.

NVIDIA стоит на позиции продвижения собственного движка PhysX, который, очевидно, врядли намерена делать в ближайшее время индустриальным стандартом, то есть решением с открытым кодом и поддержкой аппаратно-программных интерфейсов OpenCL или DirectCompute. С другой стороны, NVIDIA не хочет оставлять аппаратное ускорение Bullet Physics эксклюзивной технологией ATI, и поэтому оказывает посильную помощь проекту.

Отсюда видно, что Bullet Physics должен стать инструментом № 1 среди разработчиков, чтобы аппаратное ускорение физики стало индустриальным стандартом. Но для этого, как справедливо отметил Том Питерсен, необходимы мощные инструменты разработчика, сопоставимые с теми, которые предоставляет NVIDIA. В противном случае, большая часть игровых проектов будут разрабатываться с учётом того, что физические расчёты должны осуществляться центральным процессором, как это происходит в настоящее время даже с многими приложениями, использующими PhysX SDK.

NVIDIA потратила большие деньги на покупку бесплатного движка PhysX и его дальнейшее продвижение и, конечно, должна получить от этих затрат максимальную отдачу. То есть компании выгодней, чтобы PhysX был популярнее других решений и ускорялся только на видеокартах GeForce. AMD, в свою очередь, утверждает, что PhysX станет бесполезным для NVIDIA. Заявление бесспорное, но когда это произойдёт, судить очень сложно.

AMD: технология PhysX станет бесполезной

Компания AMD не видит проблемы в том, что в системах с видеокартами ATI Radeon отсутствует поддержка PhysX: «В итоге, интерфейс прикладного программирования PhysX просто потеряет свою значимость в будущем».

Нил Робизон, директор отдела по связям с мировыми независимыми разработчиками программного обеспечения, сказал в интервью сайту Icrontic, что Advanced Micro Devices выражает глубокое сожаление по поводу решения NVIDIA отключить поддержку аппаратных расчетов физических эффектов с помощью API PhysX и карт GeForce или Ageia на системах, где визуализацией графики занимаются видеокарты ATI Radeon. Он отметил, что увеличение популярности DirectCompute и OpenCL заставит вскоре запатентованный движок PhysX уйти в забвение.

По словам Нила Робизона, физика необходима игрокам, однако, она должна быть доступной для всех пользователей, потому что только в этом случае разработчики смогут сделать её неотъемлемой частью игрового процесса, а не только дополнительными красивыми эффектами. Для этого нужно создать индустриальный стандарт, вот почему DirectX 11 столь важен для игровой индустрии. DirectCompute позволяет осуществлять расчеты общего назначения на видеокартах различных производителей. Существует несколько физических движков с открытым кодом, которые дают возможность сделать аппаратную физику доступной всем с помощью DirectCompute или OpenCL. Индустриальные стандарты сделают любую закрытую технологию нежизнеспособной.

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

AMD и Pixelux объединят усилия для ускорения физики на OpenCL

Шесть месяцев назад компания AMD вместе с Havok во время конференции разработчиков игр демонстрировала аппаратное ускорение физики тканей через OpenCL. Однако, по всей видимости, далее такой демонстрации пока дело не пойдёт: Intel не хочет выпускать Havok с поддержкой аппаратного ускорения до выхода Larrabee. Поэтому на днях компания AMD в пресс-релизе сообщила о начале работы c компаний Pixelux Entertainment, разработчиком третьего по популярности физического движка Bullet Physics.

Результатом этого сотрудничества должно стать появление версии движка Bullet Physics, поддерживающего ускорение средствами видеокарт через стандарт OpenCL. Важно отметить, что в отличие от PhysX, AMD собирается создать полностью открытый стандарт, ускоряющий физику с помощью любого оборудования OpenCL на любой платформе, в том числе и средствами видеокарт NVIDIA GeForce.

Между прочим, движок Bullet Physics использовался в такой достаточно известной игре как Star Wars: The Force Unleashed и Indiana Jones от LucasArts, версия для ПК которой выходит в этом году.

Выбор AMD пал на OpenCL, а не на DirectCompute потому, что последний стандарт привязан к API DirectX, то есть к Windows, в то время как OpenCL является отдельным, цельным вычислительным решением.

Не упустила AMD в своём пресс-релизе и сделать упрёк в сторону PhysX, отметив, что NVIDIA, создав стандарт, исполняющейся только на видеокартах GeForce, разделяет пользователей и разработчиков и тем самым тормозит развитие графической индустрии.

Однако, если NVIDIA столкнётся с сильным открытым стандартом ускорения физики, то она быстро перенесёт PhysX на OpenCL или DirectCompute, что позволит разработчикам, наконец, без оглядки на производителей оборудования использовать в своих играх богатые физические эффекты. Ждём OpenCL-версию Bullet Physics.

AMD поддерживает физический движок Bullet, разрабатываемый на GeForce

Журналисты ресурса Fudzilla сообщили, что на одной из конференций NVIDIA сказала, что господин Эрвин Куманс, создатель движка Bullet Physics разрабатывает его на картах GeForce. Между прочим, именно этот физический движок AMD хочет ускорить с помощью своих видеокарт через OpenCL.

Также Эрвин Куманс отметил: «Ускорение средствами видеокарт AMD расчётов Bullet через OpenCL будет работать на любом совместимом драйвере: к примеру, мы использовали видеокарты NVIDIA GeForce для нашей разработки и даже применили код из их инструментов для разработчиков: NVIDIA является отличным технологическим партнёром».

Это означает, что аппаратное ускорение Bullet разрабатывается на видеокартах NVIDIA GeForce, несмотря на то, что AMD собирается представить драйвер и аппаратное ускорение для Bullet Physics. Кстати, это же сообщение говорит в пользу того, что аппаратное ускорение Bullet Physics будет прекрасно работать на видеокартах GeForce.

Так или иначе, но NVIDIA сейчас намного впереди с реализацией аппаратного ускорения физики: её движок PhysX является самым популярным. Havok занимает второе место, однако Intel, владеющая этим стандартом, ни за что не даст реализовать аппаратное ускорение физики Havok на видеокартах AMD или NVIDIA: ей он ещё понадобится для Larrabee.

Bullet Physics занимает лишь третье место, однако, благодаря будущей поддержке OpenCL и полной открытости, у него есть все шансы примирить разработчиков и производителей видеокарт, став индустриальным стандартом.

Есть ещё один достаточно популярный физический движок — Open Dynamics Engine, однако он занимает всего 4,1 % рынка.

Слухи: движок игровой физики Bullet Physics будет портирован на OpenCL при поддержке AMD

Не смотря на многократные отрицания важности NVIDIA PhysX и GPU физики в целом, AMD возможно всё-таки ступит на территорию аппаратно-ускоряемой игровой физики.

По появившейся в Сети информации, Bullet Physics Library, комплекс библиотек для имитации физических процессов с открытым исходным кодом, при поддержке AMD будет переработан для использования API универсальных вычислений OpenCL. По данным августовского исследования издания Game Developer Magazine, Bullet Physics является третьей по популярности библиотекой физики у разработчиков после принадлежащего NVIDIA PhysX и Havok от Intel. С учетом появившегося вчера на сайте AMD пресс-релиза об отправке своих OpenCL-совместимых решений (включая «фирменные» средства для разработчиков ATI Stream) на сертификацию разработчику OpenCL Kronos Group, это может стать серьёзной заявкой AMD на лидерство в области игровой физики.

Слайд AMD о OpenCL

Любопытно, что ранее разработчики Bullet Physics проявляли интерес к технологии NVIDIA CUDA, и даже выпустили комплект демонстраций с использованием CUDA 2.1 к прошедшей в марте этого года Game Developers Conference`09. От разработчиков Bullet Library пока не поступало официальных подтверждений о сотрудничестве с AMD, как и пояснений о судьбе адаптации для NVIDIA CUDA.