// public static Section CreateFromJSON(JSONObject json, IAudioClipPack clipPack) { var section = new Section(); section.inTypeNatural = Engine.Utils.parseEnum <InType>(json.GetField("natural-in").str); section.inTypeManual = Engine.Utils.parseEnum <InType>(json.GetField("manual-in").str); section.outTypeNatural = Engine.Utils.parseEnum <OutType>(json.GetField("natural-out").str); section.outTypeManual = Engine.Utils.parseEnum <OutType>(json.GetField("manual-out").str); section.beatFillIn = (int)json.GetField("beat-fillin").n; section.beatStart = (int)json.GetField("beat-start").n; section.beatEnd = (int)json.GetField("beat-end").n; json.GetField("layers", (layerarr) => { int layeridx = 0; foreach (var layer in layerarr.list) { section.m_layers[layeridx] = Layer.CreateFromJSON(layer, clipPack); layeridx++; } }); return(section); }
public static Section GenTestSection2(IAudioClipPack clipPack) { var section = new Section(); // BPM:120, 4/4 -> 1bar = 4beat var automations = TestAutomation(); var layer1 = Layer.GenTestLayer(clipPack.GetHandle("test-sec2-1")); section.m_layers[0] = layer1; var layer2 = Layer.GenTestLayer(clipPack.GetHandle("test-sec2-2")); layer2.AddTensionAutomation(automations[1]); section.m_layers[1] = layer2; var layer3 = Layer.GenTestLayer(clipPack.GetHandle("test-sec2-3")); layer3.AddTensionAutomation(automations[0]); section.m_layers[2] = layer3; var layer4 = Layer.GenTestLayer(clipPack.GetHandle("test-sec2-4")); layer4.AddTensionAutomation(automations[2]); section.m_layers[3] = layer4; section.inTypeNatural = InType.KickIn; section.inTypeManual = InType.FadeIn; section.outTypeNatural = OutType.LeaveIt; section.outTypeManual = OutType.FadeOut; section.doNotOverlapFillIn = false; section.beatFillIn = 0; section.beatStart = 1 * 4; section.beatEnd = 9 * 4; return section; }
public static Track GenTestTrack2(float bpm, IAudioClipPack clipPack) { var track = new Track(); track.BPM = bpm; var section1 = Section.GenTestSection3(clipPack); var section2 = Section.GenTestSection4(clipPack); track.m_sectionSeq.Add(section1); track.m_sectionSeq.Add(section2); track.m_sectionSeq.Add(section1); return(track); }
// public static Layer CreateFromJSON(JSONObject json, IAudioClipPack clipPack) { var newlayer = new Layer(); var clipname = json.GetField("clip").str; newlayer.clipHandle = clipPack.GetHandle(clipname); json.GetField("tension", (tensionarr) => { var list = tensionarr.list; var count = list.Count; for(int i = 0; i < count; i++) { newlayer.AddTensionAutomation(Engine.Utils.ParseAutomationFromJSON(list[i])); } }); return newlayer; }
/// <summary> /// JSON 객체를 통해 생성 /// </summary> /// <param name="json"></param> /// <returns></returns> public static Track CreateFromJSON(JSONObject json, IAudioClipPack clipPack) { var track = new Track(); track.SetClipPack(clipPack); track.BPM = json.GetField("bpm").f; json.GetField("sections", (sectionarr) => { var list = sectionarr.list; var count = list.Count; for (int i = 0; i < count; i++) { var newsec = Section.CreateFromJSON(list[i], track.m_clipPack); track.m_sectionSeq.Add(newsec); } }); return track; }
// public static Layer CreateFromJSON(JSONObject json, IAudioClipPack clipPack) { var newlayer = new Layer(); var clipname = json.GetField("clip").str; newlayer.clipHandle = clipPack.GetHandle(clipname); json.GetField("tension", (tensionarr) => { var list = tensionarr.list; var count = list.Count; for (int i = 0; i < count; i++) { newlayer.AddTensionAutomation(Engine.Utils.ParseAutomationFromJSON(list[i])); } }); return(newlayer); }
/// <summary> /// JSON 객체를 통해 생성 /// </summary> /// <param name="json"></param> /// <returns></returns> public static Track CreateFromJSON(JSONObject json, IAudioClipPack clipPack) { var track = new Track(); track.SetClipPack(clipPack); track.BPM = json.GetField("bpm").f; json.GetField("sections", (sectionarr) => { var list = sectionarr.list; var count = list.Count; for (int i = 0; i < count; i++) { var newsec = Section.CreateFromJSON(list[i], track.m_clipPack); track.m_sectionSeq.Add(newsec); } }); return(track); }
public static Section GenTestSection2(IAudioClipPack clipPack) { var section = new Section(); // BPM:120, 4/4 -> 1bar = 4beat var automations = TestAutomation(); var layer1 = Layer.GenTestLayer(clipPack.GetHandle("test-sec2-1")); section.m_layers[0] = layer1; var layer2 = Layer.GenTestLayer(clipPack.GetHandle("test-sec2-2")); layer2.AddTensionAutomation(automations[1]); section.m_layers[1] = layer2; var layer3 = Layer.GenTestLayer(clipPack.GetHandle("test-sec2-3")); layer3.AddTensionAutomation(automations[0]); section.m_layers[2] = layer3; var layer4 = Layer.GenTestLayer(clipPack.GetHandle("test-sec2-4")); layer4.AddTensionAutomation(automations[2]); section.m_layers[3] = layer4; section.inTypeNatural = InType.KickIn; section.inTypeManual = InType.FadeIn; section.outTypeNatural = OutType.LeaveIt; section.outTypeManual = OutType.FadeOut; section.doNotOverlapFillIn = false; section.beatFillIn = 0; section.beatStart = 1 * 4; section.beatEnd = 9 * 4; return(section); }
// public static Section CreateFromJSON(JSONObject json, IAudioClipPack clipPack) { var section = new Section(); section.inTypeNatural = Engine.Utils.parseEnum<InType>(json.GetField("natural-in").str); section.inTypeManual = Engine.Utils.parseEnum<InType>(json.GetField("manual-in").str); section.outTypeNatural = Engine.Utils.parseEnum<OutType>(json.GetField("natural-out").str); section.outTypeManual = Engine.Utils.parseEnum<OutType>(json.GetField("manual-out").str); section.beatFillIn = (int)json.GetField("beat-fillin").n; section.beatStart = (int)json.GetField("beat-start").n; section.beatEnd = (int)json.GetField("beat-end").n; json.GetField("layers", (layerarr) => { int layeridx = 0; foreach(var layer in layerarr.list) { section.m_layers[layeridx] = Layer.CreateFromJSON(layer, clipPack); layeridx++; } }); return section; }
/// <summary> /// AudioClipPack 붙이기 /// </summary> /// <param name="pack"></param> public void SetClipPack(IAudioClipPack pack) { m_clipPack = pack; }
public static Track GenTestTrack2(float bpm, IAudioClipPack clipPack) { var track = new Track(); track.BPM = bpm; var section1 = Section.GenTestSection3(clipPack); var section2 = Section.GenTestSection4(clipPack); track.m_sectionSeq.Add(section1); track.m_sectionSeq.Add(section2); track.m_sectionSeq.Add(section1); return track; }