Files
tech5/source/engine/gamelib/physics/aftree.h
T
2026-08-09 04:29:27 -07:00

33 lines
744 B
C++

#pragma once
#include "idlib/containers/list.h"
#include "idlib/math/vector.h"
class idAFBody;
class idAFConstraint;
class idAFTree {
public:
idAFTree();
void SortBodies();
void SetMaxSubTreeAuxiliaryIndex();
void Factor() const;
void Solve(int auxiliaryIndex) const;
void Response(const idAFConstraint* constraint, int row,
int auxiliaryIndex) const;
void CalculateForces(float timeStep) const;
void DebugDraw(const idVec4& color) const;
idList<idAFBody*, 71> sortedBodies;
private:
void SortBodies_r(idList<idAFBody*, 71>& sortedList,
idAFBody* body);
};
#if defined(_WIN32) && !defined(_WIN64)
static_assert(sizeof(idAFTree) == 16,
"Recovered idAFTree ABI changed");
#endif