branchrust_reboot/main/projectile_jobscancel

155 Commits over 30 Days - 0.22cph!

34 Days 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
35 Days Ago
Bugfix: BaseRaidBench - make sure weapon flags are synced with held state Tests: ran the scene
35 Days Ago
added Projectile.UseBatched ClientVar to switch between serial and batched tick for projectiles
35 Days 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
35 Days Ago
Jobified trace-testing in HitboxSystem, also replacing local NativeArray helper function with existing Expand static extension
35 Days Ago
corrected InitializeVelocity on projectile to keep Projectile performance test consistent between runs (increased run-count)
35 Days 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
35 Days Ago
Update: BaseRaidBenchmark - adjust the camera positioning to get the full circle in view Tests: ran the scene
35 Days Ago
Update: BaseRaidBenchmark - players are visible and dressed Tests: ran the scene
35 Days 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)
35 Days 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
36 Days 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
36 Days Ago
Added extra sanity checks to projectile consistency testing
36 Days 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
36 Days Ago
added missing effects update on batched projectiles and retiring into the prefab pool
36 Days Ago
clear static test field in pet-test teardown
36 Days Ago
Clean: simplify previous bugfix Tests: ran the unit test
36 Days Ago
Update: Projectile.TestConsistency now checks for number of phys commands issued Tests: unit test passes
36 Days Ago
Bugfix: Projectile.TestConsistency - when substepping movement, use the right trace result Tests: consistency unit test now passes
36 Days Ago
Bugfix: TestProjectileEntity now works in C+S Tests: ran the previously failing unit test
36 Days 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
36 Days 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)
36 Days 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)
39 Days Ago
Update: TestLineOfSightBatched A lil cheeky 44k raycasts test. Missing the actual batched query impl. Tests: ran the test - failing as expected
39 Days 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)
39 Days 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
39 Days Ago
Update: GamePhysics tests - spawn ignore volumes per tests Tests: ran the 3 affected tests - they pass
39 Days 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
39 Days Ago
Update: TestTraceAll - don't spawn Terrain boxes We already have terrain at the bottom of the ocean Tests: ran TestTraceAll
39 Days 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
39 Days Ago
Tests: new GameTrace tests - TestsTraceAll and TestsTraceAllBatched TestTraceAllBatched is currently failing, as it's wip Tests: ran new unit tests
40 Days 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
40 Days Ago
Update: projectile perf test Tests: ran the perf test
40 Days 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
40 Days 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
40 Days Ago
Update: TestConsistency now validates repl projectiles as well Test: ran the unit test
40 Days 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
40 Days 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
41 Days 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
41 Days Ago
Update: projectile tests against players with shields Test: ran new unit tests
41 Days Ago
Update: rewrite TestProjectileWater to attempt to hit a player in water Tests: ran new TestProjectileWater - pass all
41 Days 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
42 Days Ago
compile fix
43 Days Ago
Update: projectile-water test via Craggy Pretty close to covering all cases Tests: ran new tests
43 Days Ago
Update: Projectiles that are managed by unit tests only run 1 substep Tests: projectile unit tests now pass
43 Days 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
43 Days 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)
43 Days 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
46 Days Ago
Clean: minor comment fix Tests: none, trivial change
46 Days 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