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 ๐Ÿ”’