Hello, I am trying to recreate a real life light installation in Unreal Engine. There are around 1500 lights (which are just emissive meshes in the engine) which are controlled by a MIDI file. I have discovered the Harmonix plugin`s MIDI triggers and have set up these outputs in the MetaSoundSource for each channel of the MIDI file
I then get these in my blueprint actor of the instanced static mesh, and use this code to drive their animation.
Each MIDI note corresponds to one light which has the same #. When a new channel is added I just add 127 to the indexlight so the right notes are connecting to the right lights.
Problems are the following: this all messes up when multiple notes are hit at the same time. Also the MIDI note off event won1t hold the info for its midi note if another one is hit meanwhile and therefore it would call the event or the last active one. Which then makes all the lights go on but rarely go off. The MIDI file is the one that is animating the lights irl and therefore full of notes being hit at the same time and overlapping. I can tell that the midi note # I can get output from the MetasoundSource is a single value integer, so it doesn`t account for multiple ones. Is there no other way to do this than to filter each note one by one and output them individually?
I understand this is a new plugin and its already wonderful, and I
m asking a lot, so I might have just run into limitations. However I am also not too versed in programming nor metasounds so maybe someone could offer a solution which would avoid making 1500 graph outputs and custom events.