13,600 Commits over 2,710 Days - 0.21cph!
Don't show the patrol path if the cargo ship isn't active
Don't show the patrol path if the cargo ship has begun it's egress
Don't show the path for a harbor if the cargo ship has already docked at that harbor
Removed the tooltip text changing on the cargo ship map marker - it no longer makes sense now that we have multiple docking spots and we now have better information from the ship path
Merge from PlayerRigUpdate
Update player controller from main
Merge from PlayerRigUpdate
Merge from PlayerRigUpdate
Merge from PlayerRigUpdate/2022_merge
Cleanup
Added graphics.collapseRendererLOD to control new behaviour, defaults to true and game must be restarted after toggling for new setting to take effect
One more layout change
Updated the scientist/animal icons in the extended life stats now that we have better icons
Layout, hide stats button
Added warning to death screen
Merge from main (lots of branches with map changes, trying to keep conflicts to a minimum)
Proper reference to global network group
Possible fix for minicopter seat getting removed from the client after flying through the parenting volume on the harbor swing bridge
Don't let the client move an entity into it's parent group if it is set to global broadcast (group id = 0) as that won't match with the group that it is in on the server
Merge from hide_health_aim
Don't allow the quick move conveyor path to operate on items with instance data, fixes plant genetics getting lost during conveyor process
Possible fix for team member UI displaying incorrect values when spectating
Reapplying changes from map_perf_improvements, the merge for that branch was too messy so I'll just reapply the changes with the new vending machine UI in mind
The test scene for these changes is 4 clusters of 100 vending machines each, baseline takes 109ms with 3.1mb of GC to populate the map
Don't spawn the child vending machine icons for the cluster icons, they're not used anymore so this saves a huge amount of instantiations (saves 2.5mb of allocations and 91ms)
Convert the material params in MapView update into cached ints (saves 0.06ms every frame while map is open)
Add a Poolable component to the ShopMarker and Shop marker cluster
Fix the client side vending machine data not getting returned to the pool when a marker is populated
Converted the drone marketplace map view to spawn the child vending machine markers on demand rather than when the map is opened and closed
Final result: 6.56ms and 35.2kb of GC
Merge from main (right branch this time, lots of conflicts)
Make the paths a little more transparent
Nexus ferry path stub, wont implement for this update
Refactor to support including more ocean paths
Added support for showing harbor approaches
Unsaved work, change the bundle manifest to a straight list of bundle names as the new build process doesn't produce manifests
Zeroed out run bob amounts on sks viewmodel, fixes inconsistent weapon height when sprinting
Notify the viewmodel that the player has jumped immediately, don't wait for the player to become not grounded
Added a jumped trigger so that we can leave the land anim early if the player has already jumped again
Tests for a standalone LOD baker using the UnwrapBaker system
Support MaterialSetup component
Add ability for a viewmodel to get info of whether the player is sprinting (wantsSprintInfo on the viewmodel prefab)
Add ability to suppress the left hand bone camera movement entirely on a viewmodel (suppressMovementHeadBob on viewmodel prefab)
Fixed collapse not working with skinned objects, not casting shadows
Various fixes, move to PrefabPreProcess so it gets run once per prefab
Added egress state to debug_cargo_state
debug_cargo_status and debug_info no longer need to be called from in-game
Two cargo ship movement fixes:
-Fix the cargo ship no longer being able to egress if it was saved/loaded while egressing (it's possible this has never worked). It would just keep sailing away forever (and start venturing into NaN positions).
-Fix a case where the cargo ship would not be able to rotate to face it's desired waypoint if it spawned facing perfectly away from the waypoint. The cargo ship rotation logic would not work if the ship was facing the completely opposite direction, it now receives a bit of a nudge if this ever happens to ensure it can start to rotate. This would have likely caused newly created cargo ships to rarely get stuck at their spawn point.
More memory optimisations - attempting to reduce the number of transforms/gameobjects/renderer components there are in the world by consolidating them into a single RendererLOD when possible
eg. a RendererLOD has three child LODs all at 0,0,0 - this process caches the mesh and materials used at each LOD level and creates a new renderer/filter on the RendererLOD root and switches the mesh and materials when adjusting LODs. This allows us to delete the child transforms entirely.
Process is entirely automatic and applied at runtime to all RendererLODs so no change to artist workflow.
Some initial results:
Launch site goes from 30,409 transforms to 21,131
Outpost goes from 11,850 -> 9,633
Harbor_1 goes from 17,233 -> 13,125
That's a total saving of over 15k transforms, renderers, filters just from three monuments!
Fixed manifest not being included, still not loading
New attempt - load all preprocessed prefabs into a dedicated client/server scene and include that in the build
Created new FileSystem backend that is mostly working, builds are done via Builds/PreProcess/ menu