userGriglercancel

886 Commits over 426 Days - 0.09cph!

41 Days Ago
batched projectiles handle cameraclip avoiding code for thrown projectiles
41 Days Ago
BaseRaidBenchmark - only create extra Client if one doesn't already exist, it's double ticking projectile effect processing and making it look worse than it is
45 Days Ago
merge from projectile_jobs
45 Days Ago
handle null localplayer properly for demo playback
45 Days Ago
merge from main
45 Days Ago
merge from dpv_bone_error
45 Days Ago
re-assigned model root to correct transform
45 Days Ago
merge from ambiencezone_nre_fix
45 Days Ago
check AmbienceManager instance is valid for AmbienceZone triggers (can NRE when leaving server)
45 Days Ago
don't serialize shoreVectorTexture
45 Days Ago
merge from projectile_jobs
45 Days Ago
fixed deferred schedule issue in OceanTrace path for when there is no water instance (basically just an issue in the Playground scene) adjusted batch sizes for ocean traces as deferred scheduling seems to act on the capacity of the entire list rather than the count
46 Days Ago
merge from projectile_jobs
46 Days Ago
ensure effect processing always runs for projectiles when none need updates (fixes projectiles hanging around until another is fired)
46 Days Ago
merge from projectile_jobs
46 Days Ago
server/none compile fix
46 Days Ago
cleaning up projectile TransformAccessArray properly
46 Days Ago
enabled batched projectiles by default
47 Days Ago
reduce initial capacity of the projectile stable index cache
47 Days Ago
removed BatchedWaterRays option and disabled codepath
47 Days Ago
corrected profile region name
47 Days Ago
replaced TraceWaterSpheres/TraceWaterRays with batched deferred version, scheduled with dependency on batched physics queries, so call to Complete will include both the queries and the water traces - GamePhysics.TraceBatched now runs 4 serial Commands->WaterTrace in parallel to eachother rather than completing all physics queries before doing water traces
47 Days Ago
added IJobParallelFor support to ScheduleParallel job extensions and fixed IJobFor which was just completely wrong
48 Days Ago
adjusted projectile ray generation jobs to not break initial HitTest setup into multiple jobs, ReadOnly jobs on the same TransformAccessArray seems to behave as if they cannot run in parallel to eachother (via combined dependencies) despite only require read access so Unity must be controlling this
48 Days Ago
added ScheduleParallel extension functions to handle sensible batch sizes automatically, this assumes that a reasonable batch size (64) is required before scheduling overhead beats any gains made with parallelism - if this isn't the case, such as for longrunning complex jobs working on a small number of items then you should control the batch size yourself
51 Days Ago
clarified water trace setup
51 Days Ago
Gather trace commands in a job, requires copying some data into a native container first but it's still twice as fast overall Test: projectile tests all still passing
52 Days Ago
fix server compile
52 Days Ago
clear benchmark timers after recording results, stops accumulating time between runs
53 Days Ago
cleanup profile region
53 Days Ago
jobified transform readback for effect updating, still slow to update scaled renderers though
53 Days Ago
pooling HitInfo for Projectile DoHit and don't string concat for every ricochet fx fire
53 Days Ago
moved most of HitTest generation to a transform job
53 Days Ago
further batched projectile improvemenets - jobified position/rotation writeback, 10x faster - adjusted HitTest to only populate some fields once for a projectile's lifetime (based on flag reset when it is pooled), some improvements Tests: all projectile tests passing
54 Days Ago
merge from main
54 Days Ago
cleanup
54 Days Ago
server compile fix
54 Days Ago
reworked PlayerCache into a generic StableObjectCache to re-use it for batched Projectiles, making use of it for reading batches of projectile transform data which speeds it up by roughly 8x-10x compared to going through managed properties (cached or otherwise) Tests: re-ran all projectile and PlayerCache tests, adjusted to new interface
58 Days Ago
missing return
58 Days Ago
added batched water tracing and various supporting features - GamePhysics.UseBatchedWaterRays convar to disable for perf comparison, will remove eventually - NativeArray/NativeList expansion can optionally use power of two expansion - Added native-friendly query structures for TerrainHeightMap and ShoreVectors, can add more querying functionality as needed but keeping it lean for now - Modified test cases to be more lenient on float comparisons as Burst compilation introduces variance of around 1e-8 in position results on waves which is more than acceptable
2 Months Ago
fixed potential break in TraceWaterRays/TraceWaterSpheres logic that would cause casts to miss water traces if an earlier one had hit the max number of colliders
2 Months Ago
sharing more data between batched projectile effect processing - only accessing transform pos/rot once per projectile and only checking retrieving local player entity data once per batch
2 Months Ago
added Projectile.UseBatched ClientVar to switch between serial and batched tick for projectiles
2 Months Ago
Jobified trace-testing in HitboxSystem, also replacing local NativeArray helper function with existing Expand static extension
2 Months Ago
corrected InitializeVelocity on projectile to keep Projectile performance test consistent between runs (increased run-count)
2 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
2 Months Ago
Added extra sanity checks to projectile consistency testing
2 Months Ago
added missing effects update on batched projectiles and retiring into the prefab pool
2 Months Ago
clear static test field in pet-test teardown
2 Months Ago
▋▄▍▄▉ ▆▉▉▌▆ █▋▇▆▇▋▄▇▅ ▌▅▌▌▌▊▄▇ ▅▋▄▄ ▆▋▍▇▌▊ ▋▌▅▍▍▋▍▅ ██ ▋▍▋▍▌ ▄▊▍, ▍▆ ▅██▌ ▇▋ ▌▅▆▍█-▍▉▅▆█▄▍ ▅▄▌▋▅▉▉▆▄ ▄▅▆ ▄▍ ▇▉ █▇▇ ▆▉ ▅▍▌▌█▄ - ▌█▉▊█▍▋▋▌█ █▆▍▆▅▋▋▄ ▍▌ █▉▍▊ ▍ ▄▋▇▄▅ (▄▌ ▋█▋▋ ██▋▆▇ ▆▉▅▄▄█▍ ▇█) ▅▋▍▉ ▊▇█ ▍▋▇▆█-▋▋█▊▉█▉▇ ▆▇▆▊▉▆▄ ▋▉▌ ▊▌ ▍▊▍▆▍ ▅▋▇▇▉▊▇ ▄▌ ▉▋▋ █▉▍▇▍▆ ▌▉▆▍█▇▊▇▌▋▇ █▄▋ ▅▊▇▊▆ ▄▊ ▊▌ ▊▊▋▆▄▅ ▇▊█▄█▄▋ ▊▆▇▄▊<->▅▋▊▊█ █▍▉▋▅▆▅▌▉