diharaw / physx-ragdoll Goto Github PK
View Code? Open in Web Editor NEWA sample demonstrating ragdoll physics using Nvidia PhysX.
License: MIT License
A sample demonstrating ragdoll physics using Nvidia PhysX.
License: MIT License
Requirements: CMake, Git, Python(3.12.2 worked for me)
git clone --recursive https://github.com/diharaw/physx-ragdoll.git
cd physx-ragdoll
mkdir build
cd build
cmake -G "Visual Studio 17" ..
<?xml version="1.0" encoding="utf-8"?>
<preset name="vc17win64" comment="VC17 Win64 PhysX general settings">
<platform targetPlatform="win64" compiler="vc17" />
<CMakeSwitches>
<cmakeSwitch name="PX_BUILDSNIPPETS" value="True" comment="Generate the snippets" />
<cmakeSwitch name="PX_BUILDPUBLICSAMPLES" value="True" comment="Generate the samples projects" />
<cmakeSwitch name="PX_GENERATE_STATIC_LIBRARIES" value="False" comment="Generate static libraries" />
<cmakeSwitch name="NV_USE_STATIC_WINCRT" value="False" comment="Use the statically linked windows CRT" />
<cmakeSwitch name="NV_USE_DEBUG_WINCRT" value="True" comment="Use the debug version of the CRT" />
<cmakeSwitch name="PX_FLOAT_POINT_PRECISE_MATH" value="False" comment="Float point precise math" />
</CMakeSwitches>
<CMakeParams>
<cmakeParam name="CMAKE_INSTALL_PREFIX" value="install/vc15win64/PhysX" comment="Install path relative to PhysX SDK root" />
</CMakeParams>
</preset>
Go back up to "physx-ragdoll/external/PhysX/physx" and run the generate_projects.bat file selecting vc17win64 which is the one we added.
Open the physx solution in "physx-ragdoll/external/PhysX/physx/compiler/vc17win64" and build.
If you get an error about typeinfo.h not existing just turn the #include <typeinfo.h>
into #include <typeinfo>
and compile again.
Head into "physx-ragdoll/external/PhysX/physx/bin/win.x86_64.vc142.md/debug/" copy the DLLs into "physx-ragdoll/bin/Debug".
Open up the "physx-ragdoll/build/PhysXRagdoll.sln" solution and set the PhysXRagdoll project as startup.
In main.cpp add the following lines:
#pragma comment(lib, "INSERT_YOUR_ABSOLUTE_PATH_HERE/physx-ragdoll/external/PhysX/physx/bin/win.x86_64.vc142.md/debug/PhysX_64.lib")
#pragma comment(lib, "INSERT_YOUR_ABSOLUTE_PATH_HERE/physx-ragdoll/external/PhysX/physx/bin/win.x86_64.vc142.md/debug/PhysXCommon_64.lib")
#pragma comment(lib, "INSERT_YOUR_ABSOLUTE_PATH_HERE/physx-ragdoll/external/PhysX/physx/bin/win.x86_64.vc142.md/debug/PhysXCooking_64.lib")
#pragma comment(lib, "INSERT_YOUR_ABSOLUTE_PATH_HERE/physx-ragdoll/external/PhysX/physx/bin/win.x86_64.vc142.md/debug/PhysXFoundation_64.lib")
#pragma comment(lib, "INSERT_YOUR_ABSOLUTE_PATH_HERE/physx-ragdoll/external/PhysX/physx/bin/win.x86_64.vc142.md/debug/PhysXExtensions_static_64.lib")
#pragma comment(lib, "INSERT_YOUR_ABSOLUTE_PATH_HERE/physx-ragdoll/external/PhysX/physx/bin/win.x86_64.vc142.md/debug/PhysXPvdSDK_static_64.lib")
#pragma comment(lib, "INSERT_YOUR_ABSOLUTE_PATH_HERE/physx-ragdoll/external/PhysX/physx/bin/win.x86_64.vc142.md/debug/PhysXCharacterKinematic_static_64.lib")
(If you actually know how to use cmake you can probably add them to be linked properly)
10. You should be able to compile at this point.
11. Head over to mixamo and download the Paladin J Nordstrom character, rename it to paladin.fbx and move it into "physx-ragdoll/bin/Debug/mesh"
You should be good to run the physxragdoll project from there.
There is no paladin.fbx so project won't run.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.