|
|
virtual void | release ()=0 |
| | Closes this instance of the interface.
|
| |
| virtual PxBuffer * | createBuffer (PxU64 byteSize, PxBufferType::Enum bufferType, PxCudaContextManager *cudaContexManager, PxU64 *memStat)=0 |
| |
|
virtual PxBuffer * | createBuffer (PxU64 byteSyte, PxBufferType::Enum type, PxCudaContextManager *contextManager, PxU64 *memStat, PxsHeapMemoryAllocatorManager *heapMemoryManager, void *stream)=0 |
| |
|
virtual PxParticleBuffer * | createParticleBuffer (PxU32 maxNumParticles, PxU32 maxVolumes, PxCudaContextManager *cudaContextManager, PxU64 *memStat, void(*onParticleBufferRelease)(PxParticleBuffer *buffer))=0 |
| |
|
virtual PxParticleClothBuffer * | createParticleClothBuffer (PxU32 maxNumParticles, PxU32 maxVolumes, PxU32 maxNumCloths, PxU32 maxNumTriangles, PxU32 maxNumSprings, PxCudaContextManager *cudaContextManager, PxU64 *memStat, void(*onParticleBufferRelease)(PxParticleBuffer *buffer))=0 |
| |
|
virtual PxParticleRigidBuffer * | createParticleRigidBuffer (PxU32 maxNumParticles, PxU32 maxVolumes, PxU32 maxNumRigids, PxCudaContextManager *cudaContextManager, PxU64 *memStat, void(*onParticleBufferRelease)(PxParticleBuffer *buffer))=0 |
| |
|
virtual PxParticleAndDiffuseBuffer * | createParticleAndDiffuseBuffer (PxU32 maxParticles, PxU32 maxVolumes, PxU32 maxDiffuseParticles, PxCudaContextManager *cudaContextManager, PxU64 *memStat, void(*onParticleBufferRelease)(PxParticleBuffer *buffer))=0 |
| |
|
virtual void | resizeBuffer (PxBuffer *buffer, PxU64 byteSize)=0 |
| |
| virtual void | addCopyCommand (PxBuffer &dst, PxBuffer &src, bool flush)=0 |
| |
|
virtual void | addCopyCommand (PxBuffer &dst, PxBuffer &src, PxU32 srcOffset, PxU32 dstOffset, PxU32 size, bool flush)=0 |
| |
| virtual PxsMemoryManager * | createGpuMemoryManager (PxCudaContextManager *cudaContextManager)=0 |
| |
|
virtual PxsHeapMemoryAllocatorManager * | createGpuHeapMemoryAllocatorManager (const PxU32 heapCapacity, PxsMemoryManager *memoryManager, const PxU32 gpuComputeVersion)=0 |
| |
| virtual PxsKernelWranglerManager * | createGpuKernelWranglerManager (PxCudaContextManager *cudaContextManager, PxErrorCallback &errorCallback, const PxU32 gpuComputeVersion)=0 |
| |
| virtual Bp::BroadPhase * | createGpuBroadPhase (PxsKernelWranglerManager *gpuKernelWrangler, PxCudaContextManager *cudaContextManager, const PxU32 gpuComputeVersion, const PxgDynamicsMemoryConfig &config, PxsHeapMemoryAllocatorManager *heapMemoryManager, PxU64 contextID)=0 |
| |
| virtual Bp::AABBManagerBase * | createGpuAABBManager (PxsKernelWranglerManager *gpuKernelWrangler, PxCudaContextManager *cudaContextManager, const PxU32 gpuComputeVersion, const PxgDynamicsMemoryConfig &config, PxsHeapMemoryAllocatorManager *heapMemoryManager, Bp::BroadPhase &bp, Bp::BoundsArray &boundsArray, PxFloatArrayPinned &contactDistance, PxU32 maxNbAggregates, PxU32 maxNbShapes, PxVirtualAllocator &allocator, PxU64 contextID, PxPairFilteringMode::Enum kineKineFilteringMode, PxPairFilteringMode::Enum staticKineFilteringMode)=0 |
| |
| virtual PxvNphaseImplementationContext * | createGpuNphaseImplementationContext (PxsContext &context, PxsKernelWranglerManager *gpuKernelWrangler, PxvNphaseImplementationFallback *fallbackForUnsupportedCMs, const PxgDynamicsMemoryConfig &gpuDynamicsConfig, void *contactStreamBase, void *patchStreamBase, void *forceAndIndiceStreamBase, PxBoundsArrayPinned &bounds, IG::IslandSim *islandSim, physx::Dy::Context *dynamicsContext, const PxU32 gpuComputeVersion, PxsHeapMemoryAllocatorManager *heapMemoryManager, bool useGpuBP)=0 |
| |
| virtual PxsSimulationController * | createGpuSimulationController (PxsKernelWranglerManager *gpuWranglerManagers, PxCudaContextManager *cudaContextManager, Dy::Context *dynamicContext, PxvNphaseImplementationContext *npContext, Bp::BroadPhase *bp, const bool useGpuBroadphase, IG::SimpleIslandManager *simpleIslandSim, PxsSimulationControllerCallback *callback, const PxU32 gpuComputeVersion, PxsHeapMemoryAllocatorManager *heapMemoryManager, const PxU32 maxSoftBodyContacts, const PxU32 maxFemClothContacts, const PxU32 maxParticleContacts, const PxU32 maxHairContacts)=0 |
| |
| virtual Dy::Context * | createGpuDynamicsContext (Cm::FlushPool &taskPool, PxsKernelWranglerManager *gpuKernelWragler, PxCudaContextManager *cudaContextManager, const PxgDynamicsMemoryConfig &config, IG::SimpleIslandManager *islandManager, const PxU32 maxNumPartitions, const PxU32 maxNumStaticPartitions, const bool enableStabilization, const bool useEnhancedDeterminism, const PxReal maxBiasCoefficient, const PxU32 gpuComputeVersion, PxvSimStats &simStats, PxsHeapMemoryAllocatorManager *heapMemoryManager, const bool frictionEveryIteration, PxSolverType::Enum solverType, const PxReal lengthScale)=0 |
| |
Interface to create and run CUDA enabled PhysX features.
The methods of this interface are expected not to be called concurrently. Also they are expected to not be called concurrently with any tasks spawned before the end pipeline ... TODO make clear.