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 складається з трьох головних компонентів з обробки фізики:
- обробка твердих тіл (англ. rigid body);
- обробка тканин (англ. cloth);
- обробка рідин (англ. fluid);
Після установки драйвера 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:
- Unreal Engine 3
- Reality Engine
- Eclipse Engine
- Saber3D
- Trinigy Vision Engine 6.0
- 4A Engine
- NeoAxis Engine
- Unity
- Diesel Engine
- Torque 3D
Див. також
Примітки
Ця стаття не містить посилань на джерела. Ви можете допомогти поліпшити цю статтю, додавши посилання на надійні (авторитетні) джерела. Матеріал без джерел може бути піддано сумніву та вилучено. (травень 2013) |
|