From 0d30e71692e055241f8914a16a93f51a8fbaad92 Mon Sep 17 00:00:00 2001 From: jockus Date: Tue, 27 Apr 2021 17:10:55 +0100 Subject: [PATCH 1/3] Do not include resource files when creating a static library --- physx/source/compiler/cmake/windows/PhysX.cmake | 3 +++ physx/source/compiler/cmake/windows/PhysXCommon.cmake | 4 +++- physx/source/compiler/cmake/windows/PhysXCooking.cmake | 2 ++ physx/source/compiler/cmake/windows/PhysXFoundation.cmake | 4 +++- 4 files changed, 11 insertions(+), 2 deletions(-) diff --git a/physx/source/compiler/cmake/windows/PhysX.cmake b/physx/source/compiler/cmake/windows/PhysX.cmake index f329cbfca..ac5185209 100644 --- a/physx/source/compiler/cmake/windows/PhysX.cmake +++ b/physx/source/compiler/cmake/windows/PhysX.cmake @@ -55,11 +55,14 @@ SET(PHYSX_COMMON_WINDOWS_HEADERS ) SOURCE_GROUP(include\\common\\windows FILES ${PHYSX_COMMON_WINDOWS_HEADERS}) +IF(NOT PX_GENERATE_STATIC_LIBRARIES) SET(PHYSX_RESOURCE ${PHYSX_SOURCE_DIR}/compiler/resource_${RESOURCE_LIBPATH_SUFFIX}/PhysX.rc ${PHYSX_SOURCE_DIR}/compiler/resource_${RESOURCE_LIBPATH_SUFFIX}/resource.h ) + SOURCE_GROUP(resource FILES ${PHYSX_RESOURCE}) +ENDIF() SET(PHYSX_DEVICE_SOURCE ${PX_SOURCE_DIR}/device/nvPhysXtoDrv.h diff --git a/physx/source/compiler/cmake/windows/PhysXCommon.cmake b/physx/source/compiler/cmake/windows/PhysXCommon.cmake index 7c80741ce..faa379f1e 100644 --- a/physx/source/compiler/cmake/windows/PhysXCommon.cmake +++ b/physx/source/compiler/cmake/windows/PhysXCommon.cmake @@ -41,9 +41,11 @@ SET(PHYSXCOMMON_WINDOWS_SOURCE ) SOURCE_GROUP(common\\src\\windows FILES ${PHYSXCOMMON_WINDOWS_SOURCE}) +IF(NOT PX_GENERATE_STATIC_LIBRARIES) SET(PHYSXCOMMON_RESOURCE ${PHYSX_SOURCE_DIR}/compiler/resource_${RESOURCE_LIBPATH_SUFFIX}/PhysXCommon.rc) SOURCE_GROUP(resource FILES ${PHYSXCOMMON_RESOURCE}) +ENDIF() SET(PXCOMMON_PLATFORM_SRC_FILES ${PHYSXCOMMON_WINDOWS_HEADERS} @@ -104,4 +106,4 @@ IF(PHYSXCOMMON_LIBTYPE STREQUAL "SHARED") ELSE() INSTALL(FILES ${PHYSX_ROOT_DIR}/$<$:${PX_ROOT_LIB_DIR}/debug>$<$:${PX_ROOT_LIB_DIR}/release>$<$:${PX_ROOT_LIB_DIR}/checked>$<$:${PX_ROOT_LIB_DIR}/profile>/$<$:${PHYSXCOMMON_COMPILE_PDB_NAME_DEBUG}>$<$:${PHYSXCOMMON_COMPILE_PDB_NAME_CHECKED}>$<$:${PHYSXCOMMON_COMPILE_PDB_NAME_PROFILE}>$<$:${PHYSXCOMMON_COMPILE_PDB_NAME_RELEASE}>.pdb DESTINATION $<$:${PX_ROOT_LIB_DIR}/debug>$<$:${PX_ROOT_LIB_DIR}/release>$<$:${PX_ROOT_LIB_DIR}/checked>$<$:${PX_ROOT_LIB_DIR}/profile> OPTIONAL) -ENDIF() \ No newline at end of file +ENDIF() diff --git a/physx/source/compiler/cmake/windows/PhysXCooking.cmake b/physx/source/compiler/cmake/windows/PhysXCooking.cmake index be0c913c0..6e05cb76c 100644 --- a/physx/source/compiler/cmake/windows/PhysXCooking.cmake +++ b/physx/source/compiler/cmake/windows/PhysXCooking.cmake @@ -51,10 +51,12 @@ SET(PHYSX_COOKING_WINDOWS_SOURCE ) SOURCE_GROUP(src\\windows FILES ${PHYSX_COOKING_WINDOWS_SOURCE}) +IF(NOT PX_GENERATE_STATIC_LIBRARIES) SET(PHYSX_COOKING_RESOURCE ${PHYSX_SOURCE_DIR}/compiler/resource_${RESOURCE_LIBPATH_SUFFIX}/PhysXCooking.rc ) SOURCE_GROUP(resource FILES ${PHYSX_COOKING_RESOURCE}) +ENDIF() SET(PHYSXCOOKING_PLATFORM_SRC_FILES ${PHYSX_COOKING_WINDOWS_SOURCE} diff --git a/physx/source/compiler/cmake/windows/PhysXFoundation.cmake b/physx/source/compiler/cmake/windows/PhysXFoundation.cmake index a9e5a7f74..6c57df2b9 100644 --- a/physx/source/compiler/cmake/windows/PhysXFoundation.cmake +++ b/physx/source/compiler/cmake/windows/PhysXFoundation.cmake @@ -45,10 +45,12 @@ SET(PXSHARED_UNIXPLATFORM_HEADERS ) SOURCE_GROUP(shared\\include\\unix FILES ${PXSHARED_UNIXPLATFORM_HEADERS}) +IF(NOT PX_GENERATE_STATIC_LIBRARIES) SET(PHYSXFOUNDATION_RESOURCE_FILE ${PHYSX_SOURCE_DIR}/compiler/resource_${RESOURCE_LIBPATH_SUFFIX}/PhysXFoundation.rc ) SOURCE_GROUP(resource FILES ${PHYSXFOUNDATION_RESOURCE_FILE}) +ENDIF() SET(PHYSXFOUNDATION_PLATFORM_SOURCE ${LL_SOURCE_DIR}/src/windows/PsWindowsAtomic.cpp @@ -117,4 +119,4 @@ IF(PHYSXFOUNDATION_LIBTYPE STREQUAL "SHARED") ELSE() INSTALL(FILES ${PHYSX_ROOT_DIR}/$<$:${PX_ROOT_LIB_DIR}/debug>$<$:${PX_ROOT_LIB_DIR}/release>$<$:${PX_ROOT_LIB_DIR}/checked>$<$:${PX_ROOT_LIB_DIR}/profile>/$<$:${PHYSXFOUNDATION_COMPILE_PDB_NAME_DEBUG}>$<$:${PHYSXFOUNDATION_COMPILE_PDB_NAME_CHECKED}>$<$:${PHYSXFOUNDATION_COMPILE_PDB_NAME_PROFILE}>$<$:${PHYSXFOUNDATION_COMPILE_PDB_NAME_RELEASE}>.pdb DESTINATION $<$:${PX_ROOT_LIB_DIR}/debug>$<$:${PX_ROOT_LIB_DIR}/release>$<$:${PX_ROOT_LIB_DIR}/checked>$<$:${PX_ROOT_LIB_DIR}/profile> OPTIONAL) -ENDIF() \ No newline at end of file +ENDIF() From d6546b0da75225938454c7a9ee5cc7a4f4fe2e09 Mon Sep 17 00:00:00 2001 From: jockus Date: Wed, 28 Apr 2021 09:08:47 +0100 Subject: [PATCH 2/3] Remove accidental newline --- physx/source/compiler/cmake/windows/PhysX.cmake | 1 - 1 file changed, 1 deletion(-) diff --git a/physx/source/compiler/cmake/windows/PhysX.cmake b/physx/source/compiler/cmake/windows/PhysX.cmake index ac5185209..9caa53ef0 100644 --- a/physx/source/compiler/cmake/windows/PhysX.cmake +++ b/physx/source/compiler/cmake/windows/PhysX.cmake @@ -60,7 +60,6 @@ SET(PHYSX_RESOURCE ${PHYSX_SOURCE_DIR}/compiler/resource_${RESOURCE_LIBPATH_SUFFIX}/PhysX.rc ${PHYSX_SOURCE_DIR}/compiler/resource_${RESOURCE_LIBPATH_SUFFIX}/resource.h ) - SOURCE_GROUP(resource FILES ${PHYSX_RESOURCE}) ENDIF() From 1984a3fcaff614f63f18715c173956c679ea5b2a Mon Sep 17 00:00:00 2001 From: jockus Date: Mon, 10 May 2021 17:23:00 +0100 Subject: [PATCH 3/3] Allow character controller slope limit calculations on all types of actors --- .../physxcharacterkinematic/src/CctCharacterController.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/physx/source/physxcharacterkinematic/src/CctCharacterController.cpp b/physx/source/physxcharacterkinematic/src/CctCharacterController.cpp index daf53dd5b..c9d6acaf2 100644 --- a/physx/source/physxcharacterkinematic/src/CctCharacterController.cpp +++ b/physx/source/physxcharacterkinematic/src/CctCharacterController.cpp @@ -1523,7 +1523,7 @@ bool SweepTest::doSweepTest(const InternalCBData_FindTouchedGeom* userData, // TODO: 1. should we treat stationary kinematics the same as statics. // 2. should we treat all kinematics the same as statics. // 3. should we treat no kinematics the same as statics. - if((touchedActor->getConcreteType() == PxConcreteType::eRIGID_STATIC) && (C.mInternalIndex!=PX_INVALID_U32)) + if((C.mInternalIndex!=PX_INVALID_U32)) { mFlags |= STF_VALIDATE_TRIANGLE_DOWN; const PxTriangle& touchedTri = mWorldTriangles.getTriangle(C.mInternalIndex); @@ -1558,7 +1558,7 @@ bool SweepTest::doSweepTest(const InternalCBData_FindTouchedGeom* userData, } else if(sweepPass==SWEEP_PASS_SIDE || sweepPass==SWEEP_PASS_SENSOR) { - if((touchedActor->getConcreteType() == PxConcreteType::eRIGID_STATIC) && (C.mInternalIndex!=PX_INVALID_U32)) + if((C.mInternalIndex!=PX_INVALID_U32)) { mFlags |= STF_VALIDATE_TRIANGLE_SIDE; const PxTriangle& touchedTri = mWorldTriangles.getTriangle(C.mInternalIndex);