PhysX ( MFA: [ˈfɪzɛks] , pronounced [phisix]) is middleware , a cross-platform physics engine for simulating a number of physical phenomena, as well as a set of development tools ( SDK ) based on it. Originally developed by Ageia for its PhysX physical processor . After Ageia was acquired by nVidia , the engine became the property of nVidia , which continues its further development. nVidia adapted the engine to speed up physical calculations on its graphics chips with CUDA architecture. PhysX can also perform calculations using a conventional processor . PhysX is currently available on the following platforms: Windows , Linux , Mac OS X , Wii , PlayStation 3 , Xbox 360 , PlayStation 4 , Xbox One , Android , IOS (hardware acceleration is only possible on the Windows platform). The engine is used in many games and was actively offered for sale (licensing) to everyone, for various platforms [1] [2] [3] [4] [5] [6] .
| PhysX | |
|---|---|
Official logo | |
| Type of | Physics engine |
| Developers | nVidia (current) NovodeX AG , Meqon Research AB , Ageia (former) |
| Key programmer | Manju Hejd |
| Hardware platforms | IBM PC-compatible computers , PlayStation 3 , Xbox 360 , Wii , PlayStation 4 , Xbox One |
| Supported OS | Windows , Linux , Mac OS X , Android , IOS |
| License | BSD-3 |
| Latest version | 9.19.0218 |
Since December 3, 2018, the PhysX source code has been licensed under the open source license BSD-3 [7] [8] .
Content
- 1 Description
- 1.1 Ability to run PhysX with third-party GPUs
- 2 APEX PhysX
- 3 Game engines
- 4 See also
- 5 notes
- 6 References
Description
The PhysX SDK sub-software allows game developers to avoid writing their own software code to handle complex physical interactions in modern computer games . On July 20, 2005, Sony licensed the PhysX SDK for use in its seventh-generation PlayStation 3 game console . [9] PhysX SDK can be used not only in Microsoft Windows , but also in Linux , however, PhysX processor support so far works only for Windows.
Unlike most other physical engines that ship and install with the game, the PhysX SDK needs to be installed separately. It is installed as a separate driver . If the PhysX board is installed on the computer, the PhysX SDK driver will use its resources during operation. If PhysX is absent, then computing tasks will be transferred to the central processor . [10]
The PhysX SDK physics engine consists of three main components for processing physics:
- processing of solid bodies ( English rigid body );
- processing of fabrics ( English cloth );
- processing of liquids ( English fluid );
After installing the PhysX SDK driver, you can see the operation of these three components of the engine in action.
On February 13, 2008, NVIDIA acquired Ageia , making the PhysX SDK the property of NVIDIA . [11] Support for the PhysX SDK has been integrated into the CUDA framework, for which there are already many Linux drivers. Thus, the need for a dedicated PhysX physical processor has disappeared. PhysX SDK support is available for all Nvidia graphics cards starting in the 8xxx series. The PhysX Physics SDK is now known as the NVIDIA PhysX SDK . [12]
In March 2008, Nvidia announced that it would make the PhysX SDK an open standard available to everyone. [13] July 24, 2008 it became known that Nvidia will release a WHQL-certified ForceWare driver with support for physics acceleration on August 5, 2008 . [14] [15]
Due to the discontinuation of Havok FX support, the PhysX SDK physics engine was the only technology with hardware acceleration support until 2010 . [16] Initial support for hardware acceleration technology using OpenCL received another physics engine, Bullet , thanks to the active support of AMD .
Although the PhysX SDK is designed for use in computer games, it can be used in other applications.
On August 15, 2008, NVIDIA released the ForceWare 177.83 driver with PhysX support on GeForce 8, 9, and 200 series graphics cards. This immediately expanded the user base to more than 70 million people worldwide. [17] [18]
On March 4, 2015, NVIDIA announced the availability of full PhysX source codes. The engine code is supplied as part of the free PhysX SDK prepared for Windows , Linux , OS X and Android [19]
Ability to run PhysX with third-party GPUs
On June 28, 2008, Eran Badit , a member of the NGOHQ.com resource, launched hardware support for the PhysX SDK on the Radeon HD 3870 graphics card. [20] Initially, NVIDIA reacted negatively to Eran Badit’s initiative, saying this was not possible. However, on July 9, 2008, Badit was offered to join the nVidia development team, opened access to documentation, SDK , hardware, and gave engineers contacts. [21] It was promised that modified drivers for ATI cards would soon be available for download. According to other sources, ATI , in turn, has not officially supported Badith ’s initiative. [22] To write official (non-modified) Physi -enabled ATI drivers, nVidia offers to license CUDA hardware support, which includes PhysX. However, CUDA technology competes with AMD FireStream technology .
In nVidia version 186 graphics drivers, the ability to work together two graphics cards on which GPUs from different manufacturers ( AMD and nVidia ) are installed was blocked. Thus, if earlier it was possible to separate calculations on different graphics cards (for example, a card with an nVidia processor can calculate game physics, and a card with an AMD processor can render images), then from version 186 if a GPU of another manufacturer is found in the system (even integrated into the chipset), then this feature is blocked. In addition, the PhysX engine of the new version does not support PhysX specialized physical accelerators (PPUs) developed by Ageia if a non- NVIDIA GPU is detected in the system.
The representative of nVidia explained this situation as follows:
| PhysX is an open software standard, and any company is free to develop its supporting hardware or software. NVIDIA supports the acceleration of physical calculations by NVIDIA GPUs , when the NVIDIA GPU is also used for graphics ... For many reasons, partly due to development costs, partly due to testing costs and partly for business reasons, NVIDIA will not support acceleration of physical calculations GPU forces if the graphics processing is performed by a GPU of another manufacturer. |
APEX PhysX
APEX is a high-level add-in that, according to the idea of NVIDIA, should simplify the implementation of PhysX in game projects and speed up the development process. APEX allows artists and designers to create physical effects with minimal input from programmers. Instead of a low-level PhysX API, the developer is provided with a set of tools for creating specific physical effects based on ready-made APEX modules. The use of these modules is ensured by the integration of the APEX framework into game engines.
Game engines
Game engines using PhysX SDK components as a physical subsystem:
- Unreal engine 3
- Unreal engine 4
- Reality engine
- Eclipse engine
- Trinigy Vision Engine 6.0
- 4A Engine
- NeoAxis Engine
- Real Virtuality 4.0
- Unity
- Diesel engine
- REDengine 3
- Torque 3D
- Atmosfear
See also
- Directx
- Havok
- Bullet
- Opencl
Notes
- ↑ Roman Epishin. THQ votes for physics (inaccessible link) . Gambling (December 22, 2008). Date of treatment December 23, 2008. Archived on May 14, 2013.
- ↑ Pavel Shubsky. PlayStation 3 will receive PhysX (inaccessible link) . Gambling (March 18, 2009). Date of treatment March 18, 2009. Archived March 22, 2009.
- ↑ PhysX for PS3 games . GameTech (March 18, 2009). Date of treatment March 18, 2009. Archived March 16, 2012.
- ↑ Alexander Budik. NVIDIA PhysX will appear on Sony PS3 . 3DNews (March 18, 2009). Date of treatment March 25, 2009.
- ↑ Evgeny Kurochkin. NVIDIA PhysX is now on Wii . Games Country (March 20, 2009). Date of treatment March 21, 2009.
- ↑ Alexander Shemetov. Nintendo Says Yes to NVIDIA PhysX 3DNews (March 21, 2009). Date of treatment March 25, 2009.
- ↑ Nvidia goes crazy and opens PhysX under BSD-3
- ↑ NVIDIA Extends PhysX for High-Fidelity Simulations, Goes Open Source
- ↑ Sony Computer Entertainment, Inc. (July 21, 2005). Sony Computer Entertainment Enters Into Strategic Licensing Agreement With AGEIA (in en). Press release . Archived from the original on February 16, 2008. Retrieved August 23, 2006 .
- ↑ PhysX For CUDA, Linux Support A Given? (eng.) . phoronix.com. Date of treatment February 14, 2008. Archived March 16, 2012.
- ↑ NVIDIA Completes Acquisition of AGEIA Technologies: Financial News - Yahoo! Finance (inaccessible link from 05/14/2013 [2324 days] - history )
- ↑ Alexander Shemetov. Who better “accelerates physics”, GeForce 9500 GT or Core 2 Extreme QX9770? . 3DNews (August 4, 2008). Date of treatment August 4, 2008.
- ↑ Nvidia offers PhysX support to AMD / ATI Archived March 13, 2008. (unavailable link from 05/14/2013 [2324 days] - history )
- ↑ Paul "xAnder" Shubsky. NVIDIA's WHQL driver for PhysX - in early August (unreachable link) . Gambling (July 24, 2008). Date of treatment July 27, 2008. Archived July 28, 2008.
- ↑ Alexander Shemetov. New NVIDIA PhysX drivers : an increase of about 25% in 3DMark Vantage . 3DNews ( June 23, 2008 ). Date of treatment August 4, 2008.
- ↑ Shilov, Anton GPU Physics Dead for Now, Says AMD's Developer Relations Relations Chief. Nvidia's Chief Exec Predicts “Negative Synergies” with Intel's Acquisition of Havok . Xbit Laboratories (November 19, 2007). Date of treatment November 26, 2007. Archived February 16, 2012.
- ↑ NVIDIA has released a driver for PhysX hardware support . GameDev.ru (August 15, 2008). Date of appeal October 27, 2008.
- ↑ Winnie Wessy. Almost free physics . RusDoc.ru (October 14, 2008). Date of treatment October 19, 2008. Archived February 16, 2012.
- ↑ Latest PhysX Source Code Now Available Free on GitHub (March 4, 2015).
- ↑ BlackCat. PhysX is hacked and is no longer exclusive to NVIDIA Cards . IXBT.com (Saturday, June 28, 2008). Date of treatment July 9, 2008. Archived February 16, 2012.
- ↑ Paul "xAnder" Shubsky. Will NVIDIA launch PhysX support for ATI Radeon? (inaccessible link) . Gambling (July 9, 2008). Date of treatment July 9, 2008. Archived on September 3, 2009.
- ↑ An nVidia driver cracker has been invited to work ... nVidia . Tom's Hardware (July 9, 2008). Date of treatment June 13, 2009. Archived March 16, 2012.
Links
- Nvidia's own site for PhysX developers. (inaccessible link)
- NVIDIA PhysX (Russian) - PhysX page on nVidia official website
- PhysXInfo.com - The largest PhysX technology website
- Ageia PhysX Drivers - a page with a list of all drivers released by Ageia for gaming accelerators of physical calculations Ageia PhysX
- The site of the community of developers of games using PhysX technology on the Unity3D engine
- Separate articles
- Alexey Berillo. NVIDIA PhysX - Hardware Accelerated Physical Effects . iXBT.com (March 11, 2010). - Testing of games that use PhysX as much as possible, as well as analytical and descriptive materials. Date of treatment March 11, 2010.
- Alexey Gorbunov, Ivan Nechesov. NVIDIA PhysX Technology Review (link not available) . Gambling (magazine) (December 9, 2008). - An analytical article describing the technology and testing it. Date of treatment December 10, 2008. Archived December 13, 2008.
- Vitaliy Tsaruk. NVIDIA PhysX: physical effects using a graphics card . Home PC magazine (November 12, 2008). Date of treatment August 2, 2009. Archived March 16, 2012.
- Alexander Pledge. Introduction to the physics engine AGEIA PhysX 3. UralDev (April 3, 2007). Date of treatment April 3, 2010. Archived March 16, 2012.