void Update() { while (true) { var data = UnityMidiReceiver.DequeueIncomingData(); if (data == 0) { break; } var message = new MidiMessage(data); messageQueue.Enqueue(message); //nanoKontrol2スクリプトへデータを渡す nanoKontrol2.qued((int)message.status, (int)message.data1, (int)message.data2); #if UNITY_EDITOR messageHistory.Enqueue(message); #endif } #if UNITY_EDITOR while (messageHistory.Count > 8) { messageHistory.Dequeue(); } #endif }
public override void OnInspectorGUI() { // Only shows the details on Play Mode. if (EditorApplication.isPlaying) { var endpointCount = UnityMidiReceiver.CountEndpoints(); // Endpoints. var temp = "Detected MIDI endpoints:"; for (var i = 0; i < endpointCount; i++) { var id = UnityMidiReceiver.GetEndpointIdAtIndex(i); var name = UnityMidiReceiver.GetEndpointName(id); temp += "\n" + id.ToString("X8") + ": " + name; } EditorGUILayout.HelpBox(temp, MessageType.None); // Incomming messages. temp = "Incoming MIDI messages:"; foreach (var message in (target as MidiReceiver).History) { temp += "\n" + message.ToString(); } EditorGUILayout.HelpBox(temp, MessageType.None); // Make itself dirty to update on every time. EditorUtility.SetDirty(target); } else { EditorGUILayout.HelpBox("You can view the sutatus on Play Mode.", MessageType.Info); } }
void Update() { while (true) { var data = UnityMidiReceiver.DequeueIncomingData(); if (data == 0) { break; } var message = new MidiMessage(data); _dispatcher((int)message.data1, (float)message.data2 / 127f); } }
void Update() { while (true) { var data = UnityMidiReceiver.DequeueIncomingData(); if (data == 0) { break; } var message = new MidiMessage(data); messageQueue.Enqueue(message); #if UNITY_EDITOR messageHistory.Enqueue(message); #endif } #if UNITY_EDITOR while (messageHistory.Count > 8) { messageHistory.Dequeue(); } #endif }