Module cache

Source

Structs§

CharacterCacheKey
NOTE: To avoid spamming the character cache with player models, we try to store only the minimum information required to correctly update the model.
CharacterThirdPersonKey 🔒
Character data that exists in third person only.
CharacterToolKey 🔒
Character data that should be visible when tools are visible (i.e. in third person or when the character is in a tool-using state).
FigureKey
TODO: merge item_key and extra field into an enum
FigureModelCache 🔒
MeshWorkerResponse
A type produced by mesh worker threads corresponding to the information needed to mesh figures.
TerrainMeshWorkerResponse
A type produced by mesh worker threads corresponding to the information needed to mesh figures.

Enums§

FigureModelEntryFuture
A future FigureModelEntryLod.
TerrainModelEntryFuture
A future TerrainModelEntryLod.
ToolKey

Constants§

LOD_COUNT 🔒

Traits§

ModelEntryFuture

Type Aliases§

FigureModelEntryLod 🔒
MeshWorkerCell
NOTE: To test this cell for validity, we currently first use Arc::get_mut(), and then only if that succeeds do we call AtomicCell::take. This way, we avoid all atomic updates for the fast path read in the “not yet updated” case (though it would be faster without weak pointers); since once it’s updated, we switch from Pending to Done, this is only suboptimal for one frame.
TerrainMeshWorkerCell
TerrainModelEntryLod 🔒