If you sent multiple state updates on the same frame these could easily arrive in different orders on the client, which is definitely not intended. This fixes that by sending them per frame.
As a result, this also means earlier updates on the same frame are discarded, saving bandwidth.
* raw PCM audio for clyde
* Remove soundfont.cs
* Midi stuff
* Some more work
* This actually works now!
* update
* Add nfluidsynth submodule.
* fuck
* Midi audio works!
* Lots of stuff, and cool interfaces for items
* Update
* Note limit
* Moving out of range of UI raises OnClosed now as well
* It just works
* Update nfluidsynth submodule
* Remove managed-midi, remove unused methods I added to clyde
* Remove remnants of older NFluidsynth
* Update nfluidsynth submodule.
* Fix some of MidiManager
* Add changes PJB made to soundfont loading
* Delete OpenAL source/buffers when disposed
* Remove remnants of "Rendering"
* Use ReadOnlySpan, make interface/implementation arguments consistent
* Improve EmptyBuffers performance
* Make renderers use an enum for their status
* MidiRenderer events are now invoked on the main thread
* MidiManager now has a method to dispose renderers
* Lock player
* Fun stuff
* Update nfluidsynth submodule.
* Fix midi audio rendering
* Address a few reviews
* Revert changes made to Clyde
* Create sfloader per midi renderer
* Midi file size check
* Now OpenMidi/OpenInput and their respective close methods return bools.
* Update nfluidsynth submodule.
* Move number to constant.
* Use BufferedAudioSource
* Remove unused using statements
* Use new API
* Lock player and synth correctly
* Use midi sawmill
* Adds "Disposed" property to MidiRenderer
* Remove DisposeRenderer, let midi render thread handle it instead
* Renderer position is updated from main loop
* Use nfluidsynth from nuget
* Fix appveyor, lazy fluidsynth init
* Only join MidiThread if it actually exists...
* Project file refactor
Move all the .csproj files to the new .NET Core style.
This doesn't make any difference for compiling for Framework,
but it does reduce a ton of useless boilerplate.
As an extension of this, killed a bunch of uncompiled & unmaintained .cs files.
Compiling for release (to profile) works now.
Removed AnyCPU targets from the solution file.
* Fix compiler warnings.
RobustToolbox projects should be named Robust.*
This PR changes the RobustToolbox projects from SS14.* to Robust.*
Updates SS14.* prefixes/namespaces to Robust.*
Updates SpaceStation14.sln to RobustToolbox.sln
Updates MSBUILD/SS14.* to MSBUILD/Robust.*
Updates CSProject and MSBuild references for the above
Updates git_helper.py
Removes Runserver and Runclient as they are unusable