diff --git a/Assets/MidiAnim/Editor/MidiAnimImporter.cs b/Assets/MidiAnim/Editor/MidiAnimImporter.cs old mode 100644 new mode 100755 index 4338cac..06f25bf --- a/Assets/MidiAnim/Editor/MidiAnimImporter.cs +++ b/Assets/MidiAnim/Editor/MidiAnimImporter.cs @@ -12,6 +12,7 @@ namespace MidiAnim [ScriptedImporter(1, "midianim")] class MidiAnimImporter : ScriptedImporter { + [SerializeField] int _trackIndex = 0; [SerializeField] float _bpm = 120; [SerializeField] bool _gateEasing = false; [SerializeField] float _attackTime = 0.1f; @@ -20,7 +21,7 @@ class MidiAnimImporter : ScriptedImporter public override void OnImportAsset(AssetImportContext context) { var song = MidiFileLoader.Load(File.ReadAllBytes(context.assetPath)); - var seq = new MidiTrackSequencer(song.tracks[0], song.division, _bpm); + var seq = new MidiTrackSequencer(song.tracks[_trackIndex], song.division, _bpm); var clip = new MidiClip(_bpm); if (_gateEasing) clip.EnableEasing(_attackTime, _releaseTime); diff --git a/Assets/MidiAnim/Editor/MidiAnimImporterEditor.cs b/Assets/MidiAnim/Editor/MidiAnimImporterEditor.cs old mode 100644 new mode 100755 index ddbd24b..7de7453 --- a/Assets/MidiAnim/Editor/MidiAnimImporterEditor.cs +++ b/Assets/MidiAnim/Editor/MidiAnimImporterEditor.cs @@ -12,6 +12,7 @@ namespace MidiAnim [CustomEditor(typeof(MidiAnimImporter))] class MidiAnimImporterEditor : ScriptedImporterEditor { + SerializedProperty _trackIndex; SerializedProperty _bpm; SerializedProperty _gateEasing; SerializedProperty _attackTime; @@ -19,6 +20,7 @@ class MidiAnimImporterEditor : ScriptedImporterEditor static class Styles { + public static readonly GUIContent TrackIndex = new GUIContent("Track Index"); public static readonly GUIContent BPM = new GUIContent("BPM"); } @@ -29,6 +31,7 @@ public override void OnEnable() { base.OnEnable(); + _trackIndex = serializedObject.FindProperty("_trackIndex"); _bpm = serializedObject.FindProperty("_bpm"); _gateEasing = serializedObject.FindProperty("_gateEasing"); _attackTime = serializedObject.FindProperty("_attackTime"); @@ -37,6 +40,7 @@ public override void OnEnable() public override void OnInspectorGUI() { + EditorGUILayout.PropertyField(_trackIndex, Styles.TrackIndex); EditorGUILayout.PropertyField(_bpm, Styles.BPM); EditorGUILayout.PropertyField(_gateEasing); diff --git a/README.md b/README.md index bf8b503..835b913 100644 --- a/README.md +++ b/README.md @@ -32,6 +32,7 @@ There are a few settings in the inspector. ![inspector](https://i.imgur.com/HDWZgX7.png) +- **Track Index** - The MIDI file track index that will be imported. - **BPM** - The importer doesn't support the BPM meta information, so that the BPM has to be set manually. - **Gate Easing** - When enabled, the note curves are to be smoothed by adding