private void LoadAnim(ResU.VisibilityAnim vis) { VisibilityAnimU = vis; FrameCount = vis.FrameCount; Text = vis.Name; if (vis.BaseDataList == null) { vis.BaseDataList = new bool[0]; } if (vis.Names == null) { vis.Names = new string[0]; } BaseValues = vis.BaseDataList; foreach (var name in vis.Names) { BoneNames.Add(name); } for (int curve = 0; curve < vis.Curves.Count; curve++) { Values.Add(CurveHelper.CreateBooleanTrackWiiU(vis.Curves[curve])); } }
//Todo. Bake sizes are altered in switch somewhat, although mostly all animations should be fine public static ResNX.MaterialAnim FVISConvertWiiUToSwitch(ResU.VisibilityAnim VisualAnim) { ResNX.MaterialAnim matAnim = new ResNX.MaterialAnim(); matAnim.Name = VisualAnim.Name; matAnim.Path = VisualAnim.Path; matAnim.FrameCount = VisualAnim.FrameCount; matAnim.BindIndices = VisualAnim.BindIndices; matAnim.BakedSize = VisualAnim.BakedSize; matAnim.Loop = VisualAnim.Flags.HasFlag(ResU.TexPatternAnimFlags.Looping); int CurveIndex = 0; for (int m = 0; m < VisualAnim.Names.Count; m++) { ResNX.MaterialAnimData matAnimData = new ResNX.MaterialAnimData(); matAnimData.Name = VisualAnim.Names[m]; } matAnim.UserData = ConvertUserDataWiiU2Switch(VisualAnim.UserData); return(matAnim); }
public FVIS(ResU.VisibilityAnim anim) { Initialize(); LoadAnim(anim); }