public M2Array <M2TextureWeight> GetTextureWeights() { M2Array <M2TextureWeight> textureweights = new M2Array <M2TextureWeight>(); if (!_model.Has <MTLS>()) { return(textureweights); } foreach (var lay in _model.Get <MTLS>().SelectMany(x => x.Layers)) { M2TextureWeight weight = new M2TextureWeight(); if (lay.AlphaKeys != null) { lay.AlphaKeys.PopulateM2Track(weight.Weight, _model.Get <SEQS>()); } else { weight.Weight.Timestamps.Add(new M2Array <uint>() { 0 }); weight.Weight.Values.Add(new M2Array <FixedPoint_0_15>() { new FixedPoint_0_15(lay.Alpha.ToShort()) }); } textureweights.Add(weight); } return(textureweights); }
public static void M2TextureWeight() { SpecialSeek(openedFile.textWeightsPos); /* TODO get values */ for (int i = 0; i < openedFile.textWeightsNum; i++) { M2TextureWeight tex = new M2TextureWeight(); tex.header = new uint[] { reader.ReadUInt16(), reader.ReadUInt16() }; tex.timeStampNb = reader.ReadUInt32(); tex.timeStampPos = reader.ReadUInt32(); tex.keysNb = reader.ReadUInt32(); tex.keysPos = reader.ReadUInt32(); openedFile.texweight.Add(tex); } }