branchrust_reboot/main/projectile_jobscancel

155 Commits over 30 Days - 0.22cph!

11 Months Ago
Update: BaseRaidBench - wip weapon aiming - Weapon debug graphics confirm aiming direction - Player model doesn't face the right way (need to run client updates, that's next) - added benchmark-related safety checks in local client logic This also hijacks main camera, I'll have to fix that later Tests: ran the scene
11 Months Ago
Bugfix: BaseRaidBench - make sure weapon flags are synced with held state Tests: ran the scene
11 Months Ago
added Projectile.UseBatched ClientVar to switch between serial and batched tick for projectiles
11 Months Ago
Update: BaseRaidBench - give players projectile weapons on spawn For what-ever reason, doesn't appear in hands(instead on back), despite being reported as "held". Still investigating Tests: ran the bench scene
11 Months Ago
Jobified trace-testing in HitboxSystem, also replacing local NativeArray helper function with existing Expand static extension
11 Months Ago
corrected InitializeVelocity on projectile to keep Projectile performance test consistent between runs (increased run-count)
11 Months Ago
Optim: reduced unnecessary Transform reads in batched position/rotation update, also added AddRange(BufferList<>) function to BufferList to change to that for marginally faster loop speed Test: consistency tests passing with serial using old method still
11 Months Ago
Update: BaseRaidBenchmark - adjust the camera positioning to get the full circle in view Tests: ran the scene
11 Months Ago
Update: BaseRaidBenchmark - players are visible and dressed Tests: ran the scene
11 Months Ago
New: BaseRaidBenchmark - stress test client via a raid scenario - Doesn't do much, just ground framework Tests: ran the scene - saw players spawn (but not their visuals)
11 Months Ago
Update: World Setup Benchmark -> BiomeBenchmark World Setup rename - replaced default params on BiomeBEnchmark with placeholder to indicate they don't do anything Tests: none, trivial changes
11 Months Ago
Clean: Refactor free-slot searching logic Hope is to make it harder to mess up index calculation when writing more code of this style Tests: GamePhys unit tests + projectile consistency unit test
11 Months Ago
Added extra sanity checks to projectile consistency testing
11 Months Ago
Tests: GamePhysics.TraceRrays and TraceSpheres coverage Wasn't covered previously which led a bug slip in. But has already been fixed. Tests: ran it with bugfix revwerted - failed(as expected). Reapplied fix - passed
11 Months Ago
added missing effects update on batched projectiles and retiring into the prefab pool
11 Months Ago
clear static test field in pet-test teardown
11 Months Ago
Clean: simplify previous bugfix Tests: ran the unit test
11 Months Ago
Update: Projectile.TestConsistency now checks for number of phys commands issued Tests: unit test passes
11 Months Ago
Bugfix: Projectile.TestConsistency - when substepping movement, use the right trace result Tests: consistency unit test now passes
11 Months Ago
Bugfix: TestProjectileEntity now works in C+S Tests: ran the previously failing unit test
11 Months Ago
Bugfix: Projectile.Batch - don't over-simulate prjectile when reacting to a hit/ricochet Also noticed serial test vs entity is failing - will fix next Tests: single-projectile-batch test passes, but the whole batch fails
11 Months Ago
Update: ProjectileTests.TestConsistency - debug code to isolate projectile Still fails on 520, but now with different results(proj moves, but different height). Tests: ran unit test - fails (expected)
11 Months Ago
Update: ProjectileTests.TestConsistency - rewrote logic to run both serial and batched in one test - Removed old serial validation logic - Renamed PerfSerial test to Performance (since it also runs batched variation) Detects an issue currently, investigating. Tests: ran the new test - fails (kind of expected, but still suspicious)
11 Months Ago
Update: TestLineOfSightBatched A lil cheeky 44k raycasts test. Missing the actual batched query impl. Tests: ran the test - failing as expected
11 Months Ago
cached native allocations, batched projectiles now save between 30% - 50% of the runtime compared to serialized in performance tests (gains increase with projectile count)
11 Months Ago
Update: GamePhysics tests - move box grid creation to individual tests Avoids polluting the world for other tests(problem for LineOfSightBatched) Tests: ran the updated unit tests
11 Months Ago
Update: GamePhysics tests - spawn ignore volumes per tests Tests: ran the 3 affected tests - they pass
11 Months Ago
multiple significant fixes to GameTrace, new Projectile and GameTrace tests are passing but seeing a slight differences in projectile counts with performance test that's indicating some untested edgecases
11 Months Ago
Update: TestTraceAll - don't spawn Terrain boxes We already have terrain at the bottom of the ocean Tests: ran TestTraceAll
11 Months Ago
Tests: new GamePhysics tests - TestLineOfSight - Also making craggy loading in unit test stable by applying same fixes from Test.Projectile No batched variant as we haven't implemented it yet Tests: ran the new unit tests
11 Months Ago
Tests: new GameTrace tests - TestsTraceAll and TestsTraceAllBatched TestTraceAllBatched is currently failing, as it's wip Tests: ran new unit tests
11 Months Ago
initial pass on batched projectiles, functional except for LOS checks but failing consistency tests which needs more diagnosing - added batch support to multiple tests for comparison
11 Months Ago
Update: projectile perf test Tests: ran the perf test
11 Months Ago
Buildfix: rename UnitTests.WaterLevel to WaterLevelTests It was colliding with a non-namespace WaterLevel and causing a headache Tests: editor build in C+S
11 Months Ago
Update: refactor TestConsistency and make it cover a larger area - increased proj velocity, as it was possible for proj to start inside the shield, breaking validation Tests: ran unit test
11 Months Ago
Update: TestConsistency now validates repl projectiles as well Test: ran the unit test
11 Months Ago
Update: TestConsistency now passes - validates auth proj hit their players/shields - added utility that helps revalidate projectile hit and get more info (auth only for now) Need to expand to re-validate non-auth hits Tests: ran projectile consistency test
11 Months Ago
Update: wip fixing the consistency test - fix invalid tracking of on which frame a hit is expected - extra validation code to confirm hits to expected players - revealed missmatches Need to redo how I setup the players to avoid random overlapping Tests: ran the test
11 Months Ago
Update(wip): new comprehensive projectile test on craggy - spawns a bunch of players on craggy and drops projectiles on them Currently fails as majority of hits miss (but expect 100% hit rate) - likely bad test setup. Will investigate tomorrow Tests: ran unit tests
11 Months Ago
Update: projectile tests against players with shields Test: ran new unit tests
11 Months Ago
Update: rewrite TestProjectileWater to attempt to hit a player in water Tests: ran new TestProjectileWater - pass all
11 Months Ago
Update: extract all miss cases from projectile tests into separate case It takes the same path internally, so no point in rerunning the same test case Tests: ran all proj tests - pass
11 Months Ago
compile fix
11 Months Ago
Update: projectile-water test via Craggy Pretty close to covering all cases Tests: ran new tests
11 Months Ago
Update: Projectiles that are managed by unit tests only run 1 substep Tests: projectile unit tests now pass
11 Months Ago
Update: Projectile Tests now run inside Craggy Most tests are failing because now their substepping eventually hits water/terrain - will fix next. Tests: ran unit tests
11 Months Ago
Update: TerrainTexturing - defer init in editor, relly on manual init by user This prevents it from screwing unit tests when loading scenes Tests: ran part of updates projectile unit tests (to be committed)
11 Months Ago
Update: adding mounted-player related tests - Fixed names of tests as turns out if they share a name, then all of them get executed when trying to run only one - Fixed not cleaning up palyer's physics objects at the end of tests (caused tests to fail unexpectedly when ran all together) - test projectile now has thickness (relevant to test with players in same vehicle) Tests: ran all unit tests
11 Months Ago
Clean: minor comment fix Tests: none, trivial change
11 Months Ago
Update: projectile-entity test now covers more internal code - cleaned dead code - not sure I'll need it in the future, so to the grave it goes Tests: ran the unit tests