201,502 Commits over 4,171 Days - 2.01cph!
Added a check looking for unused phrases and conflicts
Removed some unused/duped phrases
Add debug points to faces so we can ddraw better visualizations for the faces
Fix backface check for 180 degree faces not working due to needing a bigger offset with the normal
Make logging "a little clearer"
Enable more materials for instancing that weren't caught previously because of a buggy automation in indirect instancing tools
Linearise colour values before storing them in the instance data buffer
Some fixes for the phrase contexts update, it wasn't catching everything
Cleanup/polish indirect instancing tools
more WIP on bunker entrance
Optim: NetworkPositionTick - skip transform access
Tests: none, trivial change
Optim: inline virtual calls in SendNetworkPositions and skip transform access
Tests: 2p seesion on Craggy with UsePlayerUpdateJobs 2
Tooltips now use phrases
Converted and reserialized all UI prefabs using tooltips (~130 prefabs)
Update: simplify SendNetworkPositions
Decided against parallelizing with tasks as it looks to be taking only ~0.3ms on a 350pop server
Tests: 2p session on Craggy with UsePlayerUpdateJobs 2
Clean: fix formatting
Tests: none, trivial change
Bugfix: fix failing WaterLevel tests
My ReadOnlySpan caused it, as we had hardcoded access to the global PlayerCache (which we don't use in tests).
Tests: unit tests pass
Small Cleanups:
- use Mathf.NextPowerOfTwo in BufferList
- remove CommandMemoryBase.damage_bitmap
- revert changes to MainCamera
- remove FormerlySerializedAs in RendererLOD
Update: rename BasePlayer.playerCache member var -> BasePlayer.PlayerCache
It was hiding the source of a bug, as func params have lower case name
Tests: compiles in editor
/▄▊█▊▄_▋▋█▄▅▋ -> ▅▄▍▅▆▇▅ - ▊▊▉ ▆▇▋▌▅▍▊▆ ▆▊▅▅▇ ▌█▉▊▉ ▉▄▅▇▌▉▉ █▋▉▅▊▋ ▍▅ ▉▌▇▊▌▌ ▋▅▆▋▉▉▄
▉▋▇▄▋▅█▍ ▊▄▉▌ ▄█▄█▅ ▇▊ █▅█▋▋.▉▆▇▋▇▌ ▉▇▍▆▋▇
▄▊▄▌ ▋▇▊▉▍▌▇ ▋▆▋▆ ▇▋▉▍▄ ▍▉ ██▋▊▉ ▌▉▅▍▋▊▋ ▇▉▆▋▋▌▌
Some refactoring, make sure prefab phrase contexts arent stomped when running the phrase update
Fixed persistent assets in lists being explored as potential phrase contexts
Clean: prefer ReadOnlySpan<BasePlayer> instead of playerCache where possible
Makes it easier to guess things at a glance.
Tests: ran all relevant unit tests(discovered WaterLevelTests are failing, will investigate next) + 2p session on craggy with UsePlayerUpdateJobs 2
Indirect Instancing Integration Candidate 2
convar to help test prepare for missions
Revert back to simpler save method
Abandon mission instead of trying to use reset to defaults
Update: demote PlayersToFinalize, PlayersToValidate, PlayersToRecache from being global caches
Tests: 2p session on Craggy with UsePlayerUpdateJobs 2
Update: demote PositionChanges from being a global cache
Tests: 2p session on Craggy with UsePlayerUpdateJobs 2
Keep instancing disabled by default
Strip debug code out into separate files
Merge: from occlusion_rework
- Fix for occlusion queries not being commutative
- Reenable occlusion frame cache and expand it's use to full frame
- Server occlusion deduplicates queries
- minor API restructure (might affect mods)
Optim: ServerUpdateParallel - update player subscription groups just before we run sever occlusion update
This ensures that server occlusion frame cache is built from up-to-date occluders, and allows to save on more occlusion checks downstream in ConnectedPlayersUpdate
Tests: 2p session on Craggy with UsePlayerUpdateJobs 2
Remove old unused job code
- Properly support material property blocks (for real this time)
- Disregard LOD minimum distance for the 0th LOD entry to prevent objects hiding from getting too close to them.
- Fix ConVars
- Various cleanups
More progress on bunker outside blockout WIP
Clean: split up FinalizeTickParallel monstrosity
This is end of prep to rearrange systems for better occlusion cache reuse
Tests: 2p session on craggy with UsePlayerUpdateJobs 1 and 2
Merged engine.json and phrases.json into a single file
Phrase update only look for code declared phrases
Added "Update Phrases Usage", which is basically the old update scanning the whole project, collecting everything and saving where phrases are used
Created prefabs and icons for charity plushies 2 and 3.
Updated charity plushie 02 mesh.
Created icon for charity plushie 01
Added zombie model along with the anims
Update: add native list expand to GatherPlayersToUpdate
No effect in current case, but can prevent surprise exceptions in the future if reused
Tests: none, trivial change