-
Notifications
You must be signed in to change notification settings - Fork 43
Havok MOPP Data format
Candoran2 edited this page Aug 19, 2021
·
19 revisions
The MOPP data in a havok block is difficult to capture in the xml format. The reason why should be apparent after reading this article. What follows is a best attempt at describing the data tree and how it is likely used.
The main function of the MOPP data is to form a bounding box of sorts. It can take in a position and return all the triangles that position can collide with. It does this through a tree, set up from up to 256 different node types. These different types can be broken down into three subcategories:
- Nodes with only 1 child (filter/alteration nodes).
- Nodes with 2 children (decision nodes).
- Nodes with no children (triangle/leaf nodes).
These nodes form a decision tree. These decisions are made based on the input position, and the parser can go down both children of a decision node if they both qualify.