PhysX

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до навігації Перейти до пошуку

PhysX (МФА: [fɪzɛks], вимовляється [фізікс]) — пропрієтарне сполучне програмне забезпечення (англ. middleware), кросплатформений фізичний рушій для симуляції ряду фізичних явищ, а також комплект засобів розробки (SDK) на його основі. Спочатку розроблявся компанією Ageia для свого фізичного процесора PhysX. Після того, як Ageia була придбана nVidia, рушій перейшов у власність компанії nVidia, яка продовжує його подальшу розробку. nVidia адаптувала рушій для прискорення фізичних розрахунків на своїх графічних чипах з архітектурою CUDA. PhysX може також робити обчислення з використанням звичайного процесора. В даний час PhysX доступний на таких платформах: Windows, Linux, Mac OS X, Wii, PlayStation 3, Xbox 360 (апаратне прискорення можливо тільки на платформі Windows). Рушій використовується в багатьох іграх і активно пропонується для продажу (ліцензування) всім охочим.

Опис[ред. | ред. код]

Програмне забезпечення PhysX SDK дозволяє розробникам ігор уникати написання власного програмного коду для обробки складних фізичних взаємодій в сучасних комп'ютерних іграх. 20 липня 2005 компанія Sony ліцензувала PhysX SDK для використання у своїй ігровій приставці сьомого покоління PlayStation 3. PhysX SDK може використовуватися не тільки в середовищі Microsoft Windows, але також і в Linux, проте підтримка процесора PhysX поки працює тільки для Windows.

На відміну від більшості інших фізичних рушіїв, які поставляються і встановлюються разом з грою, PhysX SDK необхідно встановити окремо. Він встановлюється як окремий драйвер. Якщо на комп'ютері встановлено плату PhysX, то драйвер PhysX SDK при роботі буде використовувати її ресурси. Якщо ж PhysX відсутній, то обчислювальні завдання будуть переноситися на центральний процесор.

Фізичний рушій PhysX SDK складається з трьох головних компонентів з обробки фізики:

Після установки драйвера PhysX SDK присутня можливість переглянути роботу цих трьох компонентів рушія в дії.

13 лютого 2008 компанія NVIDIA придбала Ageia, в результаті чого PhysX SDK став власністю NVIDIA. Підтримка PhysX SDK була інтегрована в структуру CUDA, для якої вже є безліч драйверів під Linux.[1] Таким чином, необхідність у виділеному фізичному процесорі PhysX пропала. Підтримка PhysX SDK доступна для всіх відеокарт виробництва Nvidia, починаючи з серії 8ххх. Фізичний рушій PhysX SDK тепер відомий як NVIDIA PhysX SDK.

У березні 2008 року Nvidia заявила, що зробить PhysX SDK відкритим стандартом, доступним для всіх охочих. 24 липня 2008 стало відомо, що Nvidia випустить WHQL-сертифікований драйвер ForceWare з підтримкою прискорення фізики 5 серпня 2008. У зв'язку з припиненням підтримки Havok FX фізичний рушій PhysX SDK є на даний момент єдиною технологією з підтримкою апаратного прискорення.

3 грудня 2018 року PhysX став відкритим вихідним кодом за ліцензією BSD із трьох пунктів, але ця зміна стосувалась лише комп’ютерних і мобільних платформ.[2]

Хоча PhysX SDK розроблений для використання в комп'ютерних іграх, він може бути застосований і в інших додатках.

APEX PhysX[ред. | ред. код]

APEX — високорівнева надбудова, яка за задумом NVIDIA повинна спростити впровадження PhysX в ігрові проекти і прискорити процес розробки. APEX дозволяє художникам і дизайнерам створювати фізичні ефекти при мінімальній участі програмістів. Замість низькорівневого API PhysX, розробнику надається набір інструментів для створення певних фізичних ефектів на базі готових APEX-модулів. Використання цих модулів забезпечується інтеграцією фреймвока APEX в ігрові рушії.

Ігрові рушії[ред. | ред. код]

Ігрові рушії, що як фізичну компоненту використовують PhysX SDK:

Див. також[ред. | ред. код]

Примітки[ред. | ред. код]

  1. Home. NVIDIA Newsroom (en-us) . Процитовано 27 липня 2022.
  2. PhysX SDK | NVIDIA Developer. web.archive.org. 5 грудня 2018. Архів оригіналу за 5 грудня 2018. Процитовано 27 липня 2022.