Classes | Public Member Functions | Protected Member Functions | Protected Attributes

btDX11SIMDAwareSoftBodySolver Class Reference

#include <btSoftBodySolver_DX11SIMDAware.h>

Inheritance diagram for btDX11SIMDAwareSoftBodySolver:
Inheritance graph
[legend]
Collaboration diagram for btDX11SIMDAwareSoftBodySolver:
Collaboration graph
[legend]

List of all members.

Classes

struct  SolvePositionsFromLinksKernelCB

Public Member Functions

 btDX11SIMDAwareSoftBodySolver (ID3D11Device *dx11Device, ID3D11DeviceContext *dx11Context, DXFunctions::CompileFromMemoryFunc dx11CompileFromMemory=&D3DX11CompileFromMemory)
virtual ~btDX11SIMDAwareSoftBodySolver ()
virtual btSoftBodyLinkDatagetLinkData ()
virtual void optimize (btAlignedObjectArray< btSoftBody * > &softBodies, bool forceUpdate=false)
 Optimize soft bodies in this solver.
virtual void solveConstraints (float solverdt)
 Solve constraints for a set of soft bodies.
virtual SolverTypes getSolverType () const
 Return the type of the solver.

Protected Member Functions

virtual bool buildShaders ()
void updateConstants (float timeStep)
void solveLinksForPosition (int startLink, int numLinks, float kst, float ti)

Protected Attributes

btSoftBodyLinkDataDX11SIMDAware m_linkData
 Link data for all cloths.
bool m_updateSolverConstants
 Variable to define whether we need to update solver constants on the next iteration.

Detailed Description

Definition at line 27 of file btSoftBodySolver_DX11SIMDAware.h.


Constructor & Destructor Documentation

btDX11SIMDAwareSoftBodySolver::btDX11SIMDAwareSoftBodySolver ( ID3D11Device *  dx11Device,
ID3D11DeviceContext *  dx11Context,
DXFunctions::CompileFromMemoryFunc  dx11CompileFromMemory = &D3DX11CompileFromMemory 
)

Definition at line 176 of file btSoftBodySolver_DX11SIMDAware.cpp.

btDX11SIMDAwareSoftBodySolver::~btDX11SIMDAwareSoftBodySolver (  )  [virtual]

Definition at line 188 of file btSoftBodySolver_DX11SIMDAware.cpp.


Member Function Documentation

bool btDX11SIMDAwareSoftBodySolver::buildShaders (  )  [protected, virtual]

Reimplemented from btDX11SoftBodySolver.

Definition at line 485 of file btSoftBodySolver_DX11SIMDAware.cpp.

btSoftBodyLinkData & btDX11SIMDAwareSoftBodySolver::getLinkData (  )  [virtual]

Reimplemented from btDX11SoftBodySolver.

Definition at line 194 of file btSoftBodySolver_DX11SIMDAware.cpp.

virtual SolverTypes btDX11SIMDAwareSoftBodySolver::getSolverType (  )  const [inline, virtual]

Return the type of the solver.

Reimplemented from btDX11SoftBodySolver.

Definition at line 73 of file btSoftBodySolver_DX11SIMDAware.h.

void btDX11SIMDAwareSoftBodySolver::optimize ( btAlignedObjectArray< btSoftBody * > &  softBodies,
bool  forceUpdate = false 
) [virtual]

Optimize soft bodies in this solver.

Reimplemented from btDX11SoftBodySolver.

Definition at line 202 of file btSoftBodySolver_DX11SIMDAware.cpp.

void btDX11SIMDAwareSoftBodySolver::solveConstraints ( float  solverdt  )  [virtual]

Solve constraints for a set of soft bodies.

Reimplemented from btDX11SoftBodySolver.

Definition at line 329 of file btSoftBodySolver_DX11SIMDAware.cpp.

void btDX11SIMDAwareSoftBodySolver::solveLinksForPosition ( int  startLink,
int  numLinks,
float  kst,
float  ti 
) [protected]

Reimplemented from btDX11SoftBodySolver.

Definition at line 415 of file btSoftBodySolver_DX11SIMDAware.cpp.

void btDX11SIMDAwareSoftBodySolver::updateConstants ( float  timeStep  )  [protected, virtual]

Reimplemented from btDX11SoftBodySolver.

Definition at line 383 of file btSoftBodySolver_DX11SIMDAware.cpp.


Member Data Documentation

Link data for all cloths.

Note that this will be sorted batch-wise for efficient computation and m_linkAddresses will maintain the addressing.

Reimplemented from btDX11SoftBodySolver.

Definition at line 40 of file btSoftBodySolver_DX11SIMDAware.h.

Variable to define whether we need to update solver constants on the next iteration.

Reimplemented from btDX11SoftBodySolver.

Definition at line 43 of file btSoftBodySolver_DX11SIMDAware.h.


The documentation for this class was generated from the following files: