12,052 Commits over 2,527 Days - 0.20cph!
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
Fixed lower case Attack on StateSync components (sks and paintball gun)
Fixed [Button] attributes not working on animation sub systems
Added PlayFromStart method to PlayerAnimationHandle
Added a new TwoAxisOneShotBend aniamtor sub system, should replace the reactions layer on the animator entirely
Added IsPlaying and NormalizedTime accessors to OneShotAnimationSubSystem
OneShots now start paused, makes debugging easier
Don't show the self component in dropdowns
Merge from AnimationSubSystems
Hooked up telephone animation on deployable telephone
Removed OnPhone state and parameter from player animator
Better visualise handles of sub systems in the list view
Added ability to mark a subsystem as affecting the upper body layer only
Renamed TelephoneAnimationSubSystem -> OverrideAnimationSubSystem
Profiling
Reapplied changes to PlayerModelAnimationInspector
Don't allow non matching types in the sub system dropdown
Merge from parent (use PlayerModelAnimationInspector from main, will reapply changes on this branch)
Fixed missing throw animation on bee grenade hold type
Added toggle visible events for bee grenade and beancan
Don't allow the spraycan to open the reskin menu if the only available skin is the current redirect and the base item is hidden
Reapply AnimatorOverrideUpdater
Create a new 3p_idle_unarmed_pose - a single frame version of 3p_idle_unarmed
Use that on the upper body idle, update all of the overrides accordingly
Subtract
150051 (introduced stepping issues)
Added a new Animator Override Updater tool to batch update overrides when replacing an animation on the base player animator
Since overrides work by overriding clips (not states) replacing the clip breaks every override that was referencing that clip
This automates the process of hooking them all up
Replaced the stance-idle clips in the Idle/Aiming blend tree with 3p_idle_unarmed and then ran the updater, updated 141 override controllers
Fixed some spraycan regressions when reskinning redirect items
Merge from main (solved StorageAdaptorAllowCollisionGroup conflict)
Added all of the barrel skins to StorageAdaptorAllowCollisionGroup
Merge from main
Cannon.cs and PlayerModel.cs conflicted, auto merged