Skip to Content

physx v5.3.0

Created
Updated

The NVIDIA PhysX SDK is a scalable multi-platform physics solution supporting a wide range of devices, from smartphones to high-end multicore CPUs and GPUs. This is the latest NVIDIA official version of the PhysX engine which also directly integrates into Omniverse. This port is NOT officially supported by NVIDIA.

# Usage

[Sample port usage]
physx provides CMake targets:

cmake_minimum_required(VERSION 3.15)

find_package(unofficial-omniverse-physx-sdk CONFIG REQUIRED)
target_link_libraries(main PRIVATE unofficial::omniverse-physx-sdk::sdk)

# Optional: import the defined target to copy over the GPU acceleration libraries (3rd party provided by NVIDIA)
if(TARGET unofficial::omniverse-physx-sdk::gpu-library)
    if(UNIX)
        # Add rpath setting to find .so libraries on unix based systems
        set_target_properties(main PROPERTIES
            BUILD_WITH_INSTALL_RPATH TRUE
            INSTALL_RPATH "$ORIGIN"
        )
    endif()
    add_custom_command(TARGET main POST_BUILD
                    COMMAND ${CMAKE_COMMAND} -E copy_if_different
                    $<TARGET_FILE:unofficial::omniverse-physx-sdk::gpu-library>
                    $<TARGET_FILE_DIR:main>)
    if(WIN32)
        add_custom_command(TARGET main POST_BUILD
                        COMMAND ${CMAKE_COMMAND} -E copy_if_different
                        $<TARGET_FILE:unofficial::omniverse-physx-sdk::gpu-device-library>
                        $<TARGET_FILE_DIR:main>)
    endif()
else()
    message(WARNING "GPU acceleration library target not defined - GPU acceleration will NOT be available!")
endif() 

# License

# Supported Platforms

(windows & x64 & !mingw & !uwp) | (linux & x64) | (linux & arm64)

  • linux
  • windows-x64
  • osx
  • uwp
  • windows-arm64
  • windows-x86

# Features

No features defined.

# Dependencies

No dependencies.

# Host Dependencies

# Dependents

No dependents.

# Host Dependents

No dependents.

# Contributors

  • RT222's avatar RT222
  • Phil Christensen's avatar Phil Christensen
  • Adam Johnson's avatar Adam Johnson
  • Jack·Boos·Yu's avatar Jack·Boos·Yu
  • Billy O'Neal's avatar Billy O'Neal
  • Thomas1664's avatar Thomas1664
  • Alexander Neumann's avatar Alexander Neumann
  • Darryl Pogue's avatar Darryl Pogue
  • Alesiani Marco's avatar Alesiani Marco

# Changelog

  • 3638598 [physx] Omniverse-PhysX updated to 5.3.0 (#34138)
  • d512dc8 [physx] Update to 5.x (#32568)
  • e12d82b [physx] Fix x86 Linux build errors (#30014)
  • ebffa39 [physx] Fix macOS arm64 build (#28369)
  • ac7992c [physx] Add support for Mac on ARM. (#25154)
  • 05c93c5 [Fix uwp toolchain|world rebuild] make ninja work for uwp (#22831)
  • c37cc78 [many ports] Fix use of Readme as copyright (#24201)
  • 22eb872 [physx] Remove vcpkg_fail_port_install. (#22759)
  • 59ea102 [physx] Update to 4.1.2 (#17453)
  • 5f0139b [physx] Use /Z7 instead of /Zi to integrate the debug info when building static (#15934)
and 8 more commits:

# Source