1,118 Commits over 487 Days - 0.10cph!
switched HashSet to ListHashSet in BoatAI to get rid of enumerator alloc
removed some deeper profile markers from GJK, unnecessary overhead with little info
moved a BaseBoat waterlevel test down a level so unpowered boats don't check it for no reason
burst compiling GJK distance methods directly, already compatible
- not using jobs here as it would need a NativeReference alloc for no reason, we just want the go-fast button
- verified compiling with burst inspector
merge from buoyancy_deepunderwater_fix
only handle deep underwater check outside of TerrainMeta bounds when not inside deepsea
merge from ai_vehicle_clipping_check_optim
account for ClippingAiChecks another level up in BaseVehicle to avoid running an OverlapBox query in cases where we wouldn't run any mounted clipping checks anyway
merge from npc_PlayerSyncCycle_optim
▍▋▆'▉ ▋▍▍ ▊▄▆▍▉▆▍▊▊▆▉▋▇▉▊▌▄▅▄ ▍▄▍ ▇▇█▅▊▅▄ ▉▅█▉, ▅▋▆▋ ▊▉▅▉ ▅ ▊▉▆█ ▍▊▆▌▆█ ▊▄ ▍▊▋▍ ▉▇ ▊▌▉▅▄▅▆▅▌█▄█▉.▌█▌▇▋▄▍▆▍▌▆▇▊▋▉ ▆▄ ▉▌▅▅▉ ▊▉ ██▅▆▋▋▌ ▋▋▍▌ ▊▄▇▍ ▌▉▅'▊ ▄▇▌█ █▊▍ ▋▍
- ▆▇ ▇▆▋▆▌ ▇▌▋█▆▍▉ ▉▋▍▍▅▋▉▄▉ ▄▍ ▊▆▉ ▄▋▊▌▄▍▉ █▊▉▌▌█▊ ▍▌ ▊█▄▌▇▊▉, ▋▋▄ ▇▅'▋ ▆▇▄▍▆▆▅▅▊▅▍▍ ▄▅▇▄▇ ▆▍ ▄▋▇ ▉▊ █▆▇
removed all the debug logs I forgot about
added TriggerParentDelayedExit that defers Unparenting by small amount, allows bridging small gaps in parent volumes seemlessly without needing to find them algorithmically
- replaced all TriggerParnet in BoatBuildingBlocks with this
merge from parenting_improvements
compile fix for BaseMountable change
- switched out client-incompatible check to an explicit disabling of the behaviour from the vehicle parent instead
- set flag on PlayerBoat only
merge from parenting_improvements
- just the stairs parenting volume
gave boat stairs their own parenting trigger volume
pick up fuel when picking up boat engine
merge from boat_mountable_fixes
set steering wheel as DirectlyMountable, behaviour is the same but shortcuts checking the vehicle parent MountInfo in some cases
check whether the BaseMountable is a MountPoint for its vehicle parent when checking HasValidDismountPosition
- already being checked for retrieving the actual positions, this just stops the menu item being hidden in some cases
setting ForceDeployableSetParent to true for the PlayerBoat so parenting deployables actually works
moving some cargoship/tugboat special behaviour cases in deployabled and HitInfo to be driven by an interface tag rather than direct type check
- deployables parent directly to the vehicle instead of sub-entities
- special handling in some HitInfo data generation
merge from shorevector_disabled_terrain_fix
rebaked Tropical 3 and 4, slope data was broken
handling disabled terrain properly in shore vector bake
corrected buoyancy using almost none of the correct DeepSea data sources for querying wave information
put the ocean back into the cargo test scene (ocean topology)
merge from fc_shorevector_fixes
painted ocean topology onto shared FC terrain and rebaked shore vectors
handling null/empty heightslope and waterheight data in baked data properly
(was trying to blit empty arrays)
rebaked FC 1/2/3 so the data isn't infinity
support minimum enforced shore distance on baked data to handle FC better
merge from oceansimulation_split
- running two ocean simulations, all usage switches between based on position (like all other deepsea code) and batched queries gather indirect indices
fixed issues with batched ocean trace deferred jobs
using AsDeferredJobArray for the rays in the IJobParallelForDefer OceanTraceJob as the indices now drive the deferred batch size and we still need a view of the rays list that is aware of the populated size in previous jobs. This maintains parallelism and a single set of job dependencies without needing a complete/sync
OceanSimulation split between deepsea and mainland
- required extra indirection in most batched water queries but it's hidden away
strong internal hurt triggers in square hull to handle both clipping and player damage
assigned missing physics mats on some boat building blocks
initialize deep sea shore vectors properly when loading cached shore vectors (editor-only issue)