13,826 Commits over 2,496 Days - 0.23cph!
Fixed charm picker not working when skins_access was set to 1
Merge from shot_dub_fixes
Added per axis dubbing override tracks (pan/tilt/roll)
Fixed position demo dubbing track displaying as "Position/Rotation" (was only doing position under the hood, was just mislabelled)
Fixed DoF dubbing changes not recording
▆▉▉█▌ ▌▉█▄▊ ▍▅▄▋▉▅▅ ▉▌▅▄▉▄▉ ▆▇ ▋▌▅▊▄▋▉▉█▊▅▍▇▋▆
Added new mesh.reducebonecountonlowlod convar, adjusts bone quality on skinned meshes spawned with a player
LOD0 - Auto
LOD1 - 2 Bones
LOD2/3/4 - 1 Bone
These use LODGroups so the LOD is calculated based on screen height, making the quality change imperceptible
Might have scraped a quarter of a millisecond in a stress test? Hard to judge
Defaults to on
Fixed wrong item id on ballistic vest
Hooked up the new shopkeeper anims to the waterwell shopkeepers as well
Replaced the old gesture based NPC wave with a new state on the child animator
Also did a bit of cleanup on the wave code, instead of every shopkeeper in the world doing a Vis sweep every 5-10s just do a distance check based on nearby subscribers
Makes the process free if no players are around, saves around 0.03ms each invoke
Replaced the stack of 4 sub systems on the vendor with a single animator controller
▌▆▍▉▊▅ ██▋ ▄▊▅ ▊█▍▍▊█ ▇▆ ▊ ▄▍▆█▋▆ ▋▆▅▇▄ ▇▅▅▌ ▆▊ ▇▉█▄▄▌▌▅▄ ▍▌ ▌▆▌ █▆▇▋▆▊ ▅▍ ▍▋▆ ▊▊▊▋▉▆
Merge from auto_particle_cinematics
Fixed EffectREcycle still recycling the effect if cinematic particle system mode is active when the particle is dragged into the scene
Merge from melee_subsystem (just setup on the vanilla torch for now)
Exposed and improved mask blend speed
Fixed missing threshold transitions on torch controller
Fixed controller handles starting at full weight
Fixed warning spam from ragdolled player models
Better/more insane way of blending masks, run two concurrent controllers with different masks and blend them in/out
Seems to work well, masks the difference in left hand pos
Added API to swap avatar masks
Switch to full upper body mask during light/extinguish animations
WIP melee weapon animation sub system work
Run a child controller per weapon
Added static helpers to easily detect and enable/disable stacks of subs systems
Sub systems can now be applied to any mountable
Sub systems can now be applied to a HeldEntity
Replaced the upper body toggle on animator sub systems with a mask field, each system can now be assigned an independent mask
If no mask is assigned it will fall back to the full body mask (cannot have no mask at all)
Added an outline to animation sub system inspectors, matches the colour of the system in the animation inspector
Merge from main
Mostly code merges, all auto resolved
▍▍▆▆▌▊▌▇▌ ▍▍▆ ▉▄▉▉▇ ▍█ ▌▊▊▅▄▊▄▄▉▇▍▍▊▅▉ ▍▅▌▉ ▍▊▆▄▇ ▍▌▅▌▊ ▅▇▇▉▇█ ▌▆ ▌▅ ▊▌▉▇▍▍▍▆▅▄ ▄▇▊▋▄▋▊▉▇▅▅
Fixed broken PlayerModelAnimationInspector after last commit, also added better rendering support for child animator systems
Refactored how we create and dispose controller handles, much cleaner
Fixes priority not being respected for child animation controllers
Update WearableReplacementByRace component, now attaches to a skinned mesh and contains sets of SkinSet<->Mesh
Needs to be added to each LOD level individually
Added an auto populate button that fills in the sets automatically based on name parsing, saves a lot of tedious clicking
▆▆▋▍▉▋ ▇█▇▋ ▋▍▋▌▌▆▆▋▆█▍▄▄▇▍███▉▍▋▋▆
Fix NRE when no editor window is selected
Fix animator window always opening (only inject the playable dropdown when the window is focused)
Fixed case where player could get stuck in aiming animation when throwing a grenade
Fixed editor performance after merging child animator system
▊█▆▊ ▆▌▌▉▋ ▉▉▉▍▊▅ ▍▅ ▉▍▍▆▇▄▊▇ ▌▌▆▋▍ █▍▇ ▍▊▅▅▊▌▇ ▉▋▄▊▆▆▊▇▄▇ ▊▇▉▆▆▆█▊ ▇▇▄▉ ▌▌▅▊▆▍▍▍ ▋█▋▊█▉▇ ▇▇▄▅█ ▆█▆▅▇▄
▄▉▅▄ ▌▆█▄ ▇█▇ ▆▌▄ ▄▅▌▊▌▌▌ ▉▉▉▄▍▆█ ▍█▇▅▅▌▊ ▄▋ ▊▇▊ ▆▍▆▇▊▊
Merge from main
Auto conflict resolved on cannon.depoyed, salvaged_cleaver, Scientist2
New ChildAnimatorSubSystem
Runs an entirely independent controller
Has it's own weight, can target specific layers, etc
Added a dropdown to the player animator that detects this and allows us to switch between multiple controllers for easy debugging
Add a warning to the state sync editor if the state name is incorrect