diff options
| author | Sheikh Dawood Abdul Ajees <[email protected]> | 2017-09-15 15:41:57 -0500 |
|---|---|---|
| committer | Sheikh Dawood Abdul Ajees <[email protected]> | 2017-09-15 15:41:57 -0500 |
| commit | d1c812f1162e5fdb13c215792725b2591d7428f5 (patch) | |
| tree | 407056c45c7e9320c48fca6a3697d81a061c4ea0 /PhysX_3.4/Source/LowLevelDynamics/include | |
| parent | PhysX 3.4, APEX 1.4 patch release @22121272 (diff) | |
| download | physx-3.4-d1c812f1162e5fdb13c215792725b2591d7428f5.tar.xz physx-3.4-d1c812f1162e5fdb13c215792725b2591d7428f5.zip | |
PhysX 3.4.1, APEX 1.4.1 Release @22845541v3.4.1
Diffstat (limited to 'PhysX_3.4/Source/LowLevelDynamics/include')
| -rw-r--r-- | PhysX_3.4/Source/LowLevelDynamics/include/DyContext.h | 27 | ||||
| -rw-r--r-- | PhysX_3.4/Source/LowLevelDynamics/include/DyGpuAPI.h | 38 |
2 files changed, 24 insertions, 41 deletions
diff --git a/PhysX_3.4/Source/LowLevelDynamics/include/DyContext.h b/PhysX_3.4/Source/LowLevelDynamics/include/DyContext.h index c999539c..674507e2 100644 --- a/PhysX_3.4/Source/LowLevelDynamics/include/DyContext.h +++ b/PhysX_3.4/Source/LowLevelDynamics/include/DyContext.h @@ -33,7 +33,6 @@ #include "CmPhysXCommon.h" #include "PxSceneDesc.h" #include "DyThresholdTable.h" -#include "DyGpuAPI.h" #include "PxcNpThreadContext.h" #include "PxsSimulationController.h" #include "DyConstraintWriteBack.h" @@ -91,6 +90,11 @@ public: */ PX_FORCE_INLINE PxReal getFrictionOffsetThreshold() const { return mFrictionOffsetThreshold; } /** + \brief Returns the friction offset threshold + \return The friction offset threshold. + */ + PX_FORCE_INLINE PxReal getSolverOffsetSlop() const { return mSolverOffsetSlop; } + /** \brief Returns the correlation distance \return The correlation distance. */ @@ -118,6 +122,11 @@ public: */ PX_FORCE_INLINE void setFrictionOffsetThreshold(PxReal offset) { mFrictionOffsetThreshold = offset; } /** + \brief Sets the solver offset slop + \param[in] offset The solver offset slop + */ + PX_FORCE_INLINE void setSolverOffsetSlop(PxReal offset) { mSolverOffsetSlop = offset; } + /** \brief Sets the friction offset threshold \param[in] offset The friction offset threshold */ @@ -193,6 +202,8 @@ public: */ PX_FORCE_INLINE PxReal getInvDt() const { return mInvDt; } + PX_FORCE_INLINE PxReal getMaxBiasCoefficient() const { return mMaxBiasCoefficient; } + PX_FORCE_INLINE PxVec3 getGravity() const { return mGravity; } @@ -242,15 +253,18 @@ public: protected: Context(IG::IslandSim* accurateIslandSim, Ps::VirtualAllocatorCallback* allocatorCallback, - PxvSimStats& simStats, bool enableStabilization, bool useEnhancedDeterminism, bool useAdaptiveForce) : + PxvSimStats& simStats, bool enableStabilization, bool useEnhancedDeterminism, bool useAdaptiveForce, + const PxReal maxBiasCoefficient) : mThresholdStream(NULL), mForceChangedThresholdStream(NULL), mAccurateIslandSim(accurateIslandSim), mDt (1.0f), mInvDt (1.0f), + mMaxBiasCoefficient (maxBiasCoefficient), mEnableStabilization (enableStabilization), mUseEnhancedDeterminism (useEnhancedDeterminism), mUseAdaptiveForce (useAdaptiveForce), + mBounceThreshold(-2.0f), mSolverBatchSize(32), mConstraintWriteBackPool(Ps::VirtualAllocator(allocatorCallback)), @@ -289,6 +303,8 @@ protected: */ PxReal mInvDt; + PxReal mMaxBiasCoefficient; + const bool mEnableStabilization; const bool mUseEnhancedDeterminism; @@ -311,6 +327,11 @@ protected: PxReal mFrictionOffsetThreshold; /** + \brief Tolerance used to zero offsets along an axis if it is below this threshold. Used to compensate for small numerical divergence inside contact gen. + */ + PxReal mSolverOffsetSlop; + + /** \brief Threshold controlling whether distant contacts are processed using bias, restitution or a combination of the two. This only has effect on pairs involving bodies that have enabled speculative CCD simulation mode. */ PxReal mCCDSeparationThreshold; @@ -359,7 +380,7 @@ Context* createDynamicsContext( PxcNpMemBlockPool* memBlockPool, PxcScratchAllocator& scratchAllocator, Cm::FlushPool& taskPool, PxvSimStats& simStats, PxTaskManager* taskManager, Ps::VirtualAllocatorCallback* allocatorCallback, PxsMaterialManager* materialManager, IG::IslandSim* accurateIslandSim, PxU64 contextID, - const bool enableStabilization, const bool useEnhancedDeterminism, const bool useAdaptiveForce + const bool enableStabilization, const bool useEnhancedDeterminism, const bool useAdaptiveForce, const PxReal maxBiasCoefficient ); } diff --git a/PhysX_3.4/Source/LowLevelDynamics/include/DyGpuAPI.h b/PhysX_3.4/Source/LowLevelDynamics/include/DyGpuAPI.h deleted file mode 100644 index 0945fb80..00000000 --- a/PhysX_3.4/Source/LowLevelDynamics/include/DyGpuAPI.h +++ /dev/null @@ -1,38 +0,0 @@ -// This code contains NVIDIA Confidential Information and is disclosed to you -// under a form of NVIDIA software license agreement provided separately to you. -// -// Notice -// NVIDIA Corporation and its licensors retain all intellectual property and -// proprietary rights in and to this software and related documentation and -// any modifications thereto. Any use, reproduction, disclosure, or -// distribution of this software and related documentation without an express -// license agreement from NVIDIA Corporation is strictly prohibited. -// -// ALL NVIDIA DESIGN SPECIFICATIONS, CODE ARE PROVIDED "AS IS.". NVIDIA MAKES -// NO WARRANTIES, EXPRESSED, IMPLIED, STATUTORY, OR OTHERWISE WITH RESPECT TO -// THE MATERIALS, AND EXPRESSLY DISCLAIMS ALL IMPLIED WARRANTIES OF NONINFRINGEMENT, -// MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE. -// -// Information and code furnished is believed to be accurate and reliable. -// However, NVIDIA Corporation assumes no responsibility for the consequences of use of such -// information or for any infringement of patents or other rights of third parties that may -// result from its use. No license is granted by implication or otherwise under any patent -// or patent rights of NVIDIA Corporation. Details are subject to change without notice. -// This code supersedes and replaces all information previously supplied. -// NVIDIA Corporation products are not authorized for use as critical -// components in life support devices or systems without express written approval of -// NVIDIA Corporation. -// -// Copyright (c) 2008-2017 NVIDIA Corporation. All rights reserved. -// Copyright (c) 2004-2008 AGEIA Technologies, Inc. All rights reserved. -// Copyright (c) 2001-2004 NovodeX AG. All rights reserved. - -#ifndef PXV_GPU_API_H -#define PXV_GPU_API_H - -#if PX_SUPPORT_GPU_PHYSX -#include "Pxg.h" -#endif - - -#endif // !PXV_GPU_API_H |