Class MliqData
Structured MLIQ liquid data: a vertex grid and a tile-flag grid with a base position and material id. The on-disk header is 30 bytes (the uint16 material id sits directly after a 12-byte vector, so the header is read field-by-field, not memcpy'd) followed by verts_dim.xverts_dim.y vertices and tiles_dim.xtiles_dim.y tile bytes.
public class MliqData : IDisposable
- Inheritance
-
MliqData
- Implements
- Inherited Members
Constructors
MliqData()
public MliqData()
MliqData(C2IVector, C2IVector, C3Vector, ushort, Vector<SmolVert>, Vector<SmolTile>)
public MliqData(C2IVector vertsDim, C2IVector tilesDim, C3Vector baseCoords, ushort materialId, Vector<SmolVert> vertices, Vector<SmolTile> tiles)
Parameters
vertsDimC2IVectortilesDimC2IVectorbaseCoordsC3VectormaterialIdushortverticesVector<SmolVert>tilesVector<SmolTile>
MliqData(MliqData)
Copy-construct: a deep copy of other (the C++ copy constructor).
public MliqData(MliqData other)
Parameters
otherMliqData
Properties
BaseCoords
Grid origin in group space.
public C3Vector BaseCoords { get; set; }
Property Value
Empty
Whether this group carries no liquid grid.
public bool Empty { get; }
Property Value
MaterialId
Liquid material id: an MOMT index, or a LiquidType id when the root's use_liquid_type_dbc_id flag is set.
public ushort MaterialId { get; set; }
Property Value
Tiles
tiles_dim.x * tiles_dim.y tile flag bytes, row-major.
public Vector<SmolTile> Tiles { get; }
Property Value
TilesDim
Tile grid dimensions (xtiles, ytiles); one less than the vertex dimensions in each axis.
public C2IVector TilesDim { get; set; }
Property Value
Vertices
verts_dim.x * verts_dim.y liquid vertices, row-major.
public Vector<SmolVert> Vertices { get; }
Property Value
VertsDim
Vertex grid dimensions (xverts, yverts).
public C2IVector VertsDim { get; set; }
Property Value
Methods
Dispose()
Release the native object now. Optional: the finalizer releases it on
collection anyway - dispose (or using) when you want native memory back
promptly.
public virtual void Dispose()