userDaniel Pcancel
reporust_rebootcancel

506 Commits over 123 Days - 0.17cph!

45 Days Ago
Clean: Removing a couple TODOs - Not doing vehicle specific streaming logic as 4.5k world grid gets streamed in less than a second - removing old TODO since my change implements it Tests: none, trivial change
45 Days Ago
Update: Budget every tree-cell send On Procgen 4.5k map from a save sending one cell can take 0.25ms - this change should smooth out the cost further. Tests: Booted on craggy, confirmed that player recieved all cells.
45 Days Ago
Bugfix: Don't send newly spawned trees to player if they land in a batch yet to be sent to them - Added a profiling scope so we can track if it's taking too much time(it's a TxP complexity algo, but P tends to 0 very quickly, so we should be able to afford this) Tests: Tested on 4.5k procgen world and connected from a separate client and chopped a bunch of trees saw no duplicates. That said, it's very difficult to proc this (<1s window).
45 Days Ago
Clean: forgot to save an extra comment Tests: none, trivial change
45 Days Ago
Update: replacing cell budget with a time-per-player budget - Setting this budget to 10micros initially This budget doesn't evaluate every cell, but rather groupings of cells. I'll re-evaluate this once I get to testing big procedural worlds. Tests: Confirmed entire Craggy grid gets streamed to the player
45 Days Ago
Update: added a runtime switch to disable tree batch streaming - Enabled by default Tests: booted with it being both turned on and off
45 Days Ago
Merge: from main Tests: none
48 Days Ago
Backout: bring back all the scenes Without this, editor bootstrap workflow dies. Tests: none, trivial change
48 Days Ago
Update: Reducing which scenes we have set for build in Build Settings Our internal build macros only build 2 scenes, while Test Runner tries to build all (incl disabled) scenes set in the Build Settings. This allows us to run Player-mode tests without extra steps. Tests: With PerfFwk enabled, ran pool perf tests in Player mode - it ran and gathered results.
48 Days Ago
Update: Reorganization of the perf test framework - Unity.PerformanceTesting is marked as auto-referenced (this is another modification of original package) - Added a "Rust Editor/Performance Framework/Active" menu toggle to enable/disable perf test scripts - controls RUST_PERF_FWK define - Renamed and moved PerfFwk assembly to Plugins/ (as that's it's design) - Moved existing perf tests outside to the root assembly (Scipts/PerfTests) so that we can access gameplay code The goal is to both isolate the perf framework code from the codebase as much as possible(don't ship to players or unity devs to load stuff that's not sueful), while also being able to work with our main game scripts directly. Tests: - Switch the toggle on and off - no editor errors. - Built client&server with framework being enabled - it passed. -- Found no PerfFwk references in main game assembly for both client and server and no references to test classes
49 Days Ago
Buildfix: isolating perf test scripts into it's own assembly - For the time being stores existing perf tests - will reorganize when the structure is more clear in the future. Tests: Unity booted without errors, confirmed perf tests presence in Test Runner
49 Days Ago
Merge: from main Tests: none
49 Days Ago
Update: enable sound pooling by default If something goes derp, can be disabled via audio.enablesoundpooling 0 Tests: was explicitly enabled over last 3 days while running all recent changes
49 Days Ago
Merge: from main Tests: ran around on craggy with logs
49 Days Ago
Bugfix: don't leak looping sounds when quick-switching It's possible that equipped items with sound effects (setup via sound player) can enable-then-disable across 2 frames, before SoundManager picks up the pending play request. If it's a looping sound(like torches burn loop) it would stay alive forever. Now we cleanup the pending requests on disable of sound player. Tests: mousewheel quickswitched between rock and a torch and observed numbers in audio.printsounds - the burn loop is no longer accumulating.
49 Days Ago
Update: SoundManager pools internal lists The pooling effect is minimal, but it achieves 2 small improvements: - we don't hold lists in memory for sounds that don't reapper for a while - those can be reused in other parts of the code - audio.printsounds no longer reports 0 active sounds per definintion Tests: On craggy quickswitched between equipped items. Saw the various sounds appear and disapper in the logs.
49 Days Ago
Update: microphone drops any sounds it has accumulated on destroy Tests: tested by playing the flute when exploding the microphone stand connected to a speaker
49 Days Ago
Update: MiningQuarry drops sound assets when destoyed (though it's invulnerable) Tests: none, trivial change (same type of changes as previous)
49 Days Ago
Update: modular car's engine drops all sound resources on disable Tests: blew up a modular car
49 Days Ago
Update: AmbianceWaveSounds recycles sounds on disable Tests: none targetted(same type of change as before), but have been live on my branch for 2d while testing and working on other changes.
50 Days Ago
Update: Engine blend loop drops it's sound resources on disable Tests: none, trivial change (same type of change as previous)
50 Days Ago
Update: Tree now drops it's sound resources on client destruction - It also drops the Gain mod when fading out sound loop during fall Tests: cut down a tree, saw relevant audio events in logs
50 Days Ago
Update: Traveling Vendor drops it's sound resources on client destruction Tests: none, trivial change (same type of change as previous)
50 Days Ago
Update: Parachute and Sled drop their sound resources on destroy Tests: none, trivial changes (same type of change as previous)
50 Days Ago
Update: CCTV and SpinnerWheel drop their sound resources on disable/destroy Tests: none, trivial change (same type of change as previous)
50 Days Ago
Update: Sub, Snowmobile, Tugboar and Train drop their sound resources on disable/kill - In Snowmobile's case Ski audio was previously (accidentally?) retained when sim stopped - Train engine used to retain damage and engine reflection sounds (assume an accident/bug) Tests: none, trivial changes (same type of changes as previously)
50 Days Ago
Update: CargoShip drops sounds resources on disable - Also added a couple convenience StopXSound methods, since it has a bunch of different sounds. Tests: none, trivial change (same type of change as before)
50 Days Ago
Update: Ferry drops it's sound resources when disabled Tests: none, trivial change (same type of change as previous)
50 Days Ago
Bugfix: PatrolHeli now releases modulators alongside the sounds Tests: none, trivial change
50 Days Ago
Bugfix: Drone now releases pitch modulator on destruction Tests: none, trivial change
50 Days Ago
Update: Modular Vehicle drops sound resources on destruction Tests: plugged in engine comps on Craggy's spawned vehicle, drove around in it. Put some timed c4 and drove until explosion - confirmed resources got released via logs.
50 Days Ago
Update: Helicopter now drops sound resources when disabled/retired - Also fixed a potential NRE when requesting a sound fails Tests: spawned an attack heli and flew around in it with jumping out at various stages. Also destroyed it to trigger sound recycling.
50 Days Ago
Bugfix: Bicycle now uses it's coasting sound when not pedaling Tests: rode the bicycle with pedaling on and off.
50 Days Ago
Update: Bycicle drops all sound resources when sound definition changes - Previously it tried to manage lifetime of modulators internally, but since we can pool it'll happen automatically now. Tests: rode the bike with jumping off during different moments. Noclipped away and back, redid same actions - all stable.
50 Days Ago
Update: DPV stops all sounds when no longer simulating In theory, there were edge cases where previously it was possible that some sounds would not be cleaned up. Tests: rode the DPV, jumped off at various points, picked it up and redeployed. Noclipped around the area
50 Days Ago
Update: MovementSounds releases sound resources on disable - Also got rid of IOnParentDestroying implementation - it's handled by OnDisable now Tests: ran in water. Killed self mid run to test onDisable - all good
50 Days Ago
Update: Minigun and Fishing Rod drop their sounds on destroy/cleanup Tests: Spooled up and fired the minigun with switching in between. Fished with switching at various stages(holding, throwing, fish catching, fish pulling).
50 Days Ago
Bugfix: Ignore sound fadeout requests on retired sounds Because sound is a shared-ownership resource and we have scenarios where owners don't know that the sound sometimes has been retired, we need to be a bit more permissive with existing cleanup logic. Tests: Had a fish bite with the fishing rod, started pulling then switched over to a different item, then tried fishing again - with sound pooling this would sometimes throw, but not anymore. Confirmed with audio logs that bad scenario did happen but didn't fail.
50 Days Ago
Bugfix: AmbienceEmitter now drops occlusion modulator on fade-out Tests: noclipped around Craggy with audio recycling logs on - no NREs
51 Days Ago
Merge: from item_pooling Fixes NRE when saving a player that was killed while crafting items and returned items would stack with existing inventory items Tests: crafted low grade fuel with 1 extra fat in the inventory, killed before finishing the craft and saved the session on the server - no NRE
51 Days Ago
Merge: from main Tests: editor build
51 Days Ago
Clean: remove CancelTask ReturnItems param Param was always set to true. Tests: Crafted to completion and with cancellation (voluntary + killing)
51 Days Ago
Update: rewrite the same bugfix a bit better - More explicitly explained why it's needed Tests: none, trivial change
51 Days Ago
Bugfix: Release items that we've moved from crafting tasks back to inventory. Tests: Crafted low grade fuel with 4 fat in inventory, then killed self mid-craft and saved - no NRE
51 Days Ago
Update: GameSetup can load save with double-quotes Makes it friendly with explorer's "copy as path" action. Tests: loaded a procedural save
51 Days Ago
Merge: from main Tests: none, trivial changes
52 Days Ago
Update: Implementing retiring of SoundModifier Tests: none, trivial change
52 Days Ago
Optim: Recycle footsteps earlier Previously sound would get recycled when the effect would be destroyed(1.7s), but it happens much later(instead of 0.5s) Tests: Ran around on craggy - coast, grasslands, water.
52 Days Ago
Update: Log Sound stop-and-recycle requests - Log level 3 for Audio Tests: observed logs when running around (footsteps)
52 Days Ago
Update: updating audio debug output to make cross-referencing easier Tests: Rode a zipline on Craggy, was able to track the looping sound