Skip to content

Commit

Permalink
Update PhysX_4.0_RC_2018_12_20_25462362
Browse files Browse the repository at this point in the history
  • Loading branch information
sheikh-nv committed Dec 20, 2018
1 parent 456cf85 commit c8fd212
Show file tree
Hide file tree
Showing 43 changed files with 176 additions and 29 deletions.
21 changes: 20 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# NVIDIA PhysX SDK 4.0
# NVIDIA PhysX SDK 4

Copyright (c) 2018 NVIDIA Corporation. All rights reserved.

Expand Down Expand Up @@ -26,3 +26,22 @@ OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

## Introduction

Welcome to the NVIDIA PhysX SDK source code repository. This depot includes the PhysX SDK and the Kapla Demo application.

## Documentation

Please see physx/release_notes.html for updates pertaining to the latest update.

The full set of documentation can also be found in the repository under physx/documentation or online at http://gameworksdocs.nvidia.com/simulation.html

## Quick Start Instructions

To begin, clone this repository onto your local drive. You will need to have Python 2.7.6 or later installed. Then run physx/generate_projects.[bat|sh] at the command line and follow on-screen prompts. This will let you select a platform specific solution to build. You can then open the generated solution file with your IDE and kick off one or more configuration builds.

To build and run the Kapla Demo see kaplademo/README.md.

## Acknowledgements

This depot contains external third party open source software copyright their respective owners. See kaplademo/README.md and externals/README.md for details.
12 changes: 12 additions & 0 deletions externals/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# NVIDIA PhysX SDK External Dependencies

This depot contains external third party open source software copyright their respective owners:

Brian Paul,
Emil Mikulic,
Hewlett-Packard Company,
The Khronos Group Inc.,
Pawel Olszta,
VMWare,
and the clang and glew development teams.

68 changes: 68 additions & 0 deletions externals/clang/4.0.0/LICENSE.TXT
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
==============================================================================
LLVM Release License
==============================================================================
University of Illinois/NCSA
Open Source License

Copyright (c) 2003-2017 University of Illinois at Urbana-Champaign.
All rights reserved.

Developed by:

LLVM Team

University of Illinois at Urbana-Champaign

http://llvm.org

Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal with
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
of the Software, and to permit persons to whom the Software is furnished to do
so, subject to the following conditions:

* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimers.

* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimers in the
documentation and/or other materials provided with the distribution.

* Neither the names of the LLVM Team, University of Illinois at
Urbana-Champaign, nor the names of its contributors may be used to
endorse or promote products derived from this Software without specific
prior written permission.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
SOFTWARE.

==============================================================================
Copyrights and Licenses for Third Party Software Distributed with LLVM:
==============================================================================
The LLVM software contains code written by third parties. Such software will
have its own individual LICENSE.TXT file in the directory in which it appears.
This file will describe the copyrights, license, and restrictions which apply
to that code.

The disclaimer of warranty in the University of Illinois Open Source License
applies to all code in the LLVM Distribution, and nothing in any of the
other licenses gives permission to use the names of the LLVM Team or the
University of Illinois to endorse or promote products derived from this
Software.

The following pieces of software have additional or alternate copyrights,
licenses, and/or restrictions:

Program Directory
------- ---------
Google Test llvm/utils/unittest/googletest
OpenBSD regex llvm/lib/Support/{reg*, COPYRIGHT.regex}
pyyaml tests llvm/test/YAMLParser/{*.data, LICENSE.TXT}
ARM contributions llvm/lib/Target/ARM/LICENSE.TXT
md5 contributions llvm/lib/Support/MD5.cpp llvm/include/llvm/Support/MD5.h
4 changes: 4 additions & 0 deletions externals/clang/4.0.0/README.TXT
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@

Clang binaries generated from LLVM 4.0.0 source, which was modified for
NVIDIA PhysX Meta Data generation. The binaries are distributed under the
same license as the LLVM software, see LICENSE.TXT.
8 changes: 8 additions & 0 deletions externals/vswhere/LICENSE.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
The MIT License (MIT)
Copyright (C) Microsoft Corporation. All rights reserved.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
18 changes: 8 additions & 10 deletions kaplademo/readme.txt → kaplademo/README.md
Original file line number Diff line number Diff line change
@@ -1,22 +1,20 @@
Build process:
-------------
# NVIDIA PhysX Kapla Demo

(1) Build PhysXSDK (4.0) in the required config (e.g. vc14win64/vc15win64 debug/profile/checked/release)
## Build process

(1) Build the PhysX SDK in the required config (e.g. vc14win64/vc15win64 debug/profile/checked/release)
(2) Build corresponding build config of the demo (./source/compiler/vc15win64-PhysX_4.0/KaplaDemo.sln). The post-build step will copy across the required DLLs from the PhysX build.
(3) Run the demo

Per-demo help screens can be displayed by pressing F1. Possible command line args are dispayed on the console.
Per-demo help screens can be displayed by pressing F1. Possible command line args are displayed on the console.

The demo requires a minimum spec of a Kepler class NVIDIA GPU although best performace is achieved with a Maxwell or Pascal GPU, e.g. GTX970 or above.
The demo requires a minimum spec of a Kepler class NVIDIA GPU although best performance is achieved with a Maxwell or Pascal GPU, e.g. GTX970 or above.

Known Issues
------------
## Known Issues

The win32 build may intermittently boot to a black screen. If this occurs, exit the demo and try again. This is caused by the 32-bit GL library failing to allocate a large buffer. This issue does not occur on 64-bit builds.


Acknowledgements
---------------------
## Acknowledgements

This depot contains external third party open source software, copyright belonging to their respective owners:
* OpenGL Extension Wrangler Library
Expand Down
Binary file modified physx/bin/linux.clang/checked/libPhysXGpu_64.so
Binary file not shown.
Binary file modified physx/bin/linux.clang/debug/libPhysXGpu_64.so
Binary file not shown.
Binary file modified physx/bin/linux.clang/profile/libPhysXGpu_64.so
Binary file not shown.
Binary file modified physx/bin/linux.clang/release/libPhysXGpu_64.so
Binary file not shown.
Binary file modified physx/bin/win.x86_32.vc120.mt/checked/PhysXGpu_32.dll
Binary file not shown.
Binary file modified physx/bin/win.x86_32.vc120.mt/debug/PhysXGpu_32.dll
Binary file not shown.
Binary file modified physx/bin/win.x86_32.vc120.mt/profile/PhysXGpu_32.dll
Binary file not shown.
Binary file modified physx/bin/win.x86_32.vc120.mt/release/PhysXGpu_32.dll
Binary file not shown.
Binary file modified physx/bin/win.x86_64.vc140.mt/checked/PhysXGpu_64.dll
Binary file not shown.
Binary file modified physx/bin/win.x86_64.vc140.mt/debug/PhysXGpu_64.dll
Binary file not shown.
Binary file modified physx/bin/win.x86_64.vc140.mt/profile/PhysXGpu_64.dll
Binary file not shown.
Binary file modified physx/bin/win.x86_64.vc140.mt/release/PhysXGpu_64.dll
Binary file not shown.
1 change: 1 addition & 0 deletions physx/buildtools/presets/public/linux-aarch64.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
<platform targetPlatform="linuxAarch64" compiler="gcc" />
<CMakeSwitches>
<cmakeSwitch name="PX_BUILDSNIPPETS" value="True" comment="Generate the snippets" />
<cmakeSwitch name="PX_GENERATE_STATIC_LIBRARIES" value="True" comment="Generate static libs" />
</CMakeSwitches>
<CMakeParams>
<cmakeParam name="CMAKE_INSTALL_PREFIX" value="install/linux-aarch64/PhysX" comment="Install path relative to PhysX SDK root" />
Expand Down
1 change: 1 addition & 0 deletions physx/buildtools/presets/public/linux.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
<platform targetPlatform="linux" compiler="clang" />
<CMakeSwitches>
<cmakeSwitch name="PX_BUILDSNIPPETS" value="True" comment="Generate the snippets" />
<cmakeSwitch name="PX_GENERATE_STATIC_LIBRARIES" value="True" comment="Generate static libs" />
</CMakeSwitches>
<CMakeParams>
<cmakeParam name="CMAKE_INSTALL_PREFIX" value="install/linux/PhysX" comment="Install path relative to PhysX SDK root" />
Expand Down
1 change: 1 addition & 0 deletions physx/documentation/PhysXAPI/files/PxPhysics_8h.html
Original file line number Diff line number Diff line change
Expand Up @@ -115,6 +115,7 @@
<tr class="memdesc:ga92144d0904f8a696f85737c576b88d9f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables the usage of the articulations feature. This function is called automatically inside <a class="el" href="group__physics.html#ga8039bfec65da68b2294a97175ddb2c66" title="Creates an instance of the physics SDK. ">PxCreatePhysics()</a>. On resource constrained platforms, it is possible to call <a class="el" href="group__physics.html#gad63c429157f9c8c87fcd0ea2f9b79f66" title="Creates an instance of the physics SDK with minimal additional components registered. ">PxCreateBasePhysics()</a> and then NOT call this function to save on code memory if your application does not use articulations. In this case the linker should strip out the relevant implementation code from the library. If you need to use articulations but not some other optional component, you shoud call <a class="el" href="group__physics.html#gad63c429157f9c8c87fcd0ea2f9b79f66" title="Creates an instance of the physics SDK with minimal additional components registered. ">PxCreateBasePhysics()</a> followed by this call. <a href="group__physics.html#ga92144d0904f8a696f85737c576b88d9f">More...</a><br /></td></tr>
<tr class="separator:ga92144d0904f8a696f85737c576b88d9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafa22d81f1318ef3c37f1d746ac686c22"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> void <a class="el" href="group__foundation.html#ga65a319adb859941e5bd98575280b8d19">PX_CALL_CONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__physics.html#gafa22d81f1318ef3c37f1d746ac686c22">PxRegisterArticulationsReducedCoordinate</a> (physx::PxPhysics &amp;physics)</td></tr>
<tr class="memdesc:gafa22d81f1318ef3c37f1d746ac686c22"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables the usage of the reduced coordinate articulations feature. This function is called automatically inside <a class="el" href="group__physics.html#ga8039bfec65da68b2294a97175ddb2c66" title="Creates an instance of the physics SDK. ">PxCreatePhysics()</a>. On resource constrained platforms, it is possible to call <a class="el" href="group__physics.html#gad63c429157f9c8c87fcd0ea2f9b79f66" title="Creates an instance of the physics SDK with minimal additional components registered. ">PxCreateBasePhysics()</a> and then NOT call this function to save on code memory if your application does not use articulations. In this case the linker should strip out the relevant implementation code from the library. If you need to use articulations but not some other optional component, you shoud call <a class="el" href="group__physics.html#gad63c429157f9c8c87fcd0ea2f9b79f66" title="Creates an instance of the physics SDK with minimal additional components registered. ">PxCreateBasePhysics()</a> followed by this call. <a href="group__physics.html#gafa22d81f1318ef3c37f1d746ac686c22">More...</a><br /></td></tr>
<tr class="separator:gafa22d81f1318ef3c37f1d746ac686c22"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae3a84455caaa6a7de67513ea29a315e1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__foundation.html#gaea189596f11f07c586d4757cc67e8f7f">PX_C_EXPORT</a> <a class="el" href="group__common.html#ga4636d12a5a01930fa258136f3f93366f">PX_PHYSX_CORE_API</a> void <a class="el" href="group__foundation.html#ga65a319adb859941e5bd98575280b8d19">PX_CALL_CONV</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__physics.html#gae3a84455caaa6a7de67513ea29a315e1">PxRegisterHeightFields</a> (physx::PxPhysics &amp;physics)</td></tr>
<tr class="memdesc:gae3a84455caaa6a7de67513ea29a315e1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enables the usage of the heightfield feature. <a href="group__physics.html#gae3a84455caaa6a7de67513ea29a315e1">More...</a><br /></td></tr>
Expand Down
6 changes: 3 additions & 3 deletions physx/documentation/PhysXAPI/files/PxPhysics_8h_source.html

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion physx/documentation/PhysXAPI/files/classPxPhysics.html
Original file line number Diff line number Diff line change
Expand Up @@ -351,7 +351,7 @@ <h2 class="memtitle"><span class="permalink"><a href="#a07630a24a3f8f249feae9400

<p>Creates a reduced coordinate articulation with all fields initialized to their default values. </p>
<dl class="section return"><dt>Returns</dt><dd>the new articulation</dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classPxArticulationReducedCoordinate.html" title="a tree structure of bodies connected by joints that is treated as a unit by the dynamics solver ...">PxArticulationReducedCoordinate</a>, <a class="el" href="group__physics.html#gafa22d81f1318ef3c37f1d746ac686c22">PxRegisterArticulationsReducedCoordinate</a> </dd></dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="classPxArticulationReducedCoordinate.html" title="a tree structure of bodies connected by joints that is treated as a unit by the dynamics solver ...">PxArticulationReducedCoordinate</a>, <a class="el" href="group__physics.html#gafa22d81f1318ef3c37f1d746ac686c22" title="Enables the usage of the reduced coordinate articulations feature. This function is called automatica...">PxRegisterArticulationsReducedCoordinate</a> </dd></dl>

</div>
</div>
Expand Down
Loading

0 comments on commit c8fd212

Please sign in to comment.