public static MMDMorphStateComponent LoadMorphStateComponent(PMXFormat pmx) { MMDMorphStateComponent component = new MMDMorphStateComponent(); component.Reload(pmx); return(component); }
public static void Reload(this MMDMorphStateComponent component, PMXFormat pmx) { component.stringMorphIndexMap.Clear(); component.morphs.Clear(); int morphCount = pmx.Morphs.Count; for (int i = 0; i < pmx.Morphs.Count; i++) { component.morphs.Add(GetMorphDesc(pmx.Morphs[i])); } component.WeightOrigin = new float[morphCount]; component.WeightOriginA = new float[morphCount]; component.WeightOriginB = new float[morphCount]; component.WeightComputed = new float[morphCount]; component.WeightComputedPrev = new float[morphCount]; component.WeightComputedA = new float[morphCount]; component.WeightComputedB = new float[morphCount]; component.WeightComputedAPrev = new float[morphCount]; component.WeightComputedBPrev = new float[morphCount]; for (int i = 0; i < morphCount; i++) { component.stringMorphIndexMap.Add(pmx.Morphs[i].Name, i); } }