Class M2SkinProfile
One skin profile (a whole LOD's sections and batches). Abstract over the client version; construct a concrete version with M2SkinProfile.ForVersion / for_version.
public class M2SkinProfile : IDisposable
- Inheritance
-
M2SkinProfile
- Implements
- Derived
- Inherited Members
Constructors
M2SkinProfile()
public M2SkinProfile()
M2SkinProfile(M2SkinProfile)
Copy-construct: a deep copy of other (the C++ copy constructor).
public M2SkinProfile(M2SkinProfile other)
Parameters
otherM2SkinProfile
Properties
Batches
The render batches (texture units).
public Vector<M2Batch> Batches { get; set; }
Property Value
BoneCountMax
Max bones per draw call (21/53/64/256).
public uint BoneCountMax { get; set; }
Property Value
Bones
Per-vertex 4-bone indices.
public Vector<FixedArray<byte>> Bones { get; set; }
Property Value
Indices
Triangle list into the local vertices.
public Vector<ushort> Indices { get; set; }
Property Value
ShadowBatches
Shadow batches (Cata+).
public Vector<M2ShadowBatch> ShadowBatches { get; set; }
Property Value
Submeshes
The submeshes (skin sections).
public FamilyVector<M2SkinSection> Submeshes { get; }
Property Value
Vertices
Local -> global vertex lookup.
public Vector<ushort> Vertices { 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()
Equals(object?)
Determines whether the specified object is equal to the current object.
public override bool Equals(object? obj)
Parameters
objobjectThe object to compare with the current object.
Returns
ForVersion(ClientVersion)
A fresh M2SkinProfile for an exact client version — the only axis that can name a Classic client, whose files follow the engine its build was cut on rather than its 1.15 / 4.4 version number.
public static M2SkinProfile ForVersion(ClientVersion version)
Parameters
versionClientVersion
Returns
ForVersion(Expansion)
A fresh M2SkinProfile for the given era, as the family base — the dynamic twin of the typed Era factories.
public static M2SkinProfile ForVersion(Expansion era)
Parameters
eraExpansion
Returns
GetHashCode()
Reference-identity hash (the C++ type has no hash to mirror).
public override int GetHashCode()
Returns
Operators
operator ==(M2SkinProfile?, M2SkinProfile?)
public static bool operator ==(M2SkinProfile? l, M2SkinProfile? r)
Parameters
Returns
operator !=(M2SkinProfile?, M2SkinProfile?)
public static bool operator !=(M2SkinProfile? l, M2SkinProfile? r)