branchrust_reboot/main/expand_ipooledcancel
16 Commits over 0 Days - ∞cph!
Merge: from main
I've reached a good checkpoint, so prepping to merge back to staging
Tests: tested all modes in editor, built client and server binaries, tried 2p local multiplayer - coor loop was good.
Update: TokenBucket implements IPooled
Tests: none, trivial changes
Update: Sliced-/GranularAudioClip.Grain now implement IPooled
Didn't realize there were extra similar types, added.
Tests: None, trivial changes
Update: Planner.Guide.Snapping implements IPooled
Another candidate for struct conversion - added it to the task.
Tests: tested with laser light snapping - still snaps
Update: SoundModulation.Modulator now implements IPooled
Ideally this should be a struct, since it's an 8byte object, but that would require to change too many places for now. Will create a separate task for this.
Tests: local session, ran around and shot - could hear steps, impact on different surfaces
Update: MusicManager.ClipPlaybackData now implements IPooled
Tests: booted in local session, no exceptions
Update: MusicClipLoader.LoadedAudioClip now implements IPooled
Tests: booted in local session, no exceptions
Updating: EngineAudioClip.Grain implements IPooled
Will need to explore further if it's dead script
Tests: None, trivial change
Merge: from main
Tests: none
Update: Replacing Pool.FreeUnsafe with Pool.Free where possible
Since more IPooled usage has been added, these were left untouched by accident.
Tests: none, trivial changes
Merge: from main
Tests: checked all modes build
Update: Network.Message implements IPooled
Technically, this should be converted to a struct instead, but the benefit/effort is not worth it right now.
Also marked a static as readonly, since we never modify it.
Tests: single client-server session was pumping messages succesfully. Built all modes. Tested recoridng and playback.
Update: WaterDynamics.InstanceBatch implements IPooled
Also removed a bit of dead code and unused functions.
Tests: checked that rowboat still produces foam
Update: PlayerReclaimEntry implements IPooled
Tests: tested in local multiplayer in softcore mode
Update: ImpostorBatch implements IPooled
Moved some code around and removed some always-true checks.
Tests: during local game hit all new functions in the right order
Update: convert PositionLerp to IPooled
Previously implemented as IDisposable, so this was a straighforward switch.
Tests: ran a local 2player game, forced the client to disconnect - confirmed EnterPool got called