Previous topic

Welcome to PhysX

Next topic


Distro Package Contents

Release Layout

Depending on your license, we provide you with the Core installer or with the Source installer of the PhysX SDK.

The Core SDK comprises header files and libraries for the major components of the SDK, with source code for ancillary components such as Extensions, Character and Vehicle Controllers, Samples and Snippets. Source for the major components of the SDK, such as the collision detection routines and constraint solver pipeline, is not provided with the Core SDK.

The Source SDK includes everything found in the Core SDK, plus the source code to the major components provided as libraries or DLLs in the Core SDK.

Core Installer

Bin/ Executables and dlls in platform specific folders (does not exist for some platforms).
Documentation/ PhysXGuide & PhysXAPI documentation.
externals/ External libraries.
Include/ API Include Headers.
Lib/ Libraries in platform specific folders.
media/ Media files.
Samples/ PhysX Samples, solutions are in the compiler folder.
    compiler/ Solutions for building the Sample application.
    PxToolkit/ Utilities for the sample framework.
    SampleBase/ Utility classes used across multiple samples.
    SampleBridges/ Code for 'Bridges' sample. The basics of Hello World, plus character controller, joints, kinematics.
    SampleCCTSharedCode/ Code shared by any sample using a Character Controller.
    SampleCharacterCloth/ Simple animated character with a cloth cape.
    SampleCustomGravity/ Small planet with gravity always pointing towards the center.
    SampleFramework/ Sample application framework.
    SampleHelloWorld/ Basic sample: initialize PhysX, create a stack of blocks, knock them down.
    SampleLargeWorld/ Streaming of a large world.
    SampleNorthPole/ Simple example of rigid bodies in a static environment.
    SampleParticles/ Particle system, emitters, drains.
    SampleSubmarine/ Articulated crabs, 'submarine' controller, explosive mines. Triggers and callbacks.
    SampleVehicle/ Basic test track and compact cars.
Snippets/ PhysX Code Snippets, compact console applications illustrating specific PhysX concepts.
Source/ Public Source Code.
    Common/ Functionality shared by all PhysX modules.
    compiler/ Solutions for building modules.
    foundation/ Functionality shared by all PhysX and APEX modules.
    GeomUtils/ Geometry Math.
    PhysXCharacterKinematic/ Character Controller.
    PhysXExtensions/ Extensions, Helper Classes.
    PhysXMetaData/ Serialization.
    PhysXProfileSDK/ Profiling SDK.
    PhysXVehicle/ Vehicle Controller.
    PvdRuntime/ SDK integration of Visual Debugger connection module.
Tools/ MetaData Generator.
readme_???.html Platform specific readme file.
release_notes.html PhysX Release Notes.
version-PhysX.txt PhysX version and build number of this installer.

Source Installer adds the following to the above:

Source/ Full Source Code (see core installer for details about the public sections).
    LowLevel/ Low level simulation module.
    LowLevelCloth/ Low level cloth simulation module.
    PhysX/ High level PhysX Core management.
    PhysXCooking/ PhysX Cooking.
    PhysXGpu/ GPU simulation module, including GPU infrastructure (windows only).
    PhysXVisualDebuggerSDK/ Visual Debugger connection module.
    pxtask/ Task infrastructure.
    SceneQuery/ Scene Query module.
    SimulationController/ High level simulation module.

Snippets versus Samples

The suite of samples listed above are small demonstration programs of the SDK, each covering a number of topics:

The samples are built on top of an abstraction layer called the SampleFramework, which encapsulates much of the PhysX API, and sometimes makes reading and understanding the code relatively complicated. To create example programs with better readable source code, we have created a suite of snippets. These have either no rendering or very rudimentary graphics, and instead focus on presenting individual features with very simple source code. See Snippets for more information.

Building and Running the Samples on Windows

On Windows, PhysX requires either Visual Studio 2008 with Service Pack 1 or higher, Visual Studio 2010, or Visual Studio 2012.

To see the samples, open the Visual Studio solution called Samples.sln, found in, e.g.,

{SDK ROOT}/Samples/compiler/vc11win32/Samples.sln .

This solution includes the samples listed above within the project Samples, plus some additional projects which implement common operations. There is a single executable covering all samples for a given platform and configuration, e.g. SamplesCHECKED.exe, found in, e.g.

{SDK ROOT}/Bin/Win32 .

The samples are not ported to all available platforms. For non-windows platforms that include the samples, please refer to the readme file of the respective platform for platform specific instructions.