Store unmodified binary nif data of collison shape into BulletShape
This is a second step towards platform independent (portable) navmesh disk cache and a first step to reduce its size. Here we prepare a collision mesh data copied out of nif file without modification and store it into the BulletShape as a serialized and compressed vector of bytes. That will later be used as a part of navmesh disk cache key. To be more precise this data will be stored into a separate table in the navmesh.db and the navmesh tile key will contain only a sequence of identifiers (int64 numbers) to these shapes.
To achieve this BulletNifLoader reading of nif is split into 2 stages:
- Conversion from Nif::Node to a compact memory representation of a collision mesh.
- This representation is converted into btCollisionShape and serialized into a binary format.
Potentially binary data can be used later as a key for the cache of simplified collision meshes. Having a full binary representation of a collision mesh instead of just a file path allows to distinguish them when different mesh replacer mods are used.