1,368 Commits over 610 Days - 0.09cph!
move PlayerEnterOrLeaveDeepSea RPC to the PreTeleportPlayer as it is called for all players regardless of mount/passenger state, ensures clear shore vectors
merge from mounted_shorevector_clear_fix
BC pass on horsemask
- high iteration count for more nose strength
- slightly less root motion strength for not turning into a scarf
- more damping a quick nose jiggle resting time
▆ ▌▅▄▍▊▅ ▆▋▌▊▄▆▍ ▅▍ ▄▉▋ ▊▊▍▌▋ ▅▄▆ ▅▍▊▆▋▊▌▇▆▅▉▌█▌ ▋▋█▉▊▄ ▋▉▆▄▌▋▌█ ▇▍▇▍▌█ ▄▆▄▉▌██
downsample deepsea shorevectors and distances, bitshifted by 1
fixed editor spawning of island shore vectors
centred floating_city_3 terrain properly, rebaked shore vectors
fixed native pixel data using wrong format, should've been half4 not just Color
handling floating city data, blits in on top of generated values
- also jobified stupid texture data population, 30ms down to 0.7ms still too slow but way better
legitimately generate shore distances/vectors for the deep sea rather than blitting, no floating city support yet
parallelism on DistanceField jobs and TerrainHeightMap sampling, brings total shore vector generation time down to ~5ms
shore data stored as Vector4 instead of float4 to avoid reinterpreting frequently for no reason
allow a BaseEntity to refuse gib parenting, only setting for JunkPileWater at the moment as its frequent transform updates causes gibs to fall in slow motion on the client
added kinematic body to ghostships, allows us to use MovePosition/MoveRotation for better physics behaviour
beanbags - simplified collision mesh complexity, reduced colliders to 2 as well
banner large - fixed layers and physics mats
wood shutters - assigned correct physics mat
easel - assigned correct physics mat
fixed layering on smoke grenade causing weird behaviour on ghost ships, ragdoll -> physics projectile to match other grenades
▄ ▋▆▆▌█▋▇ ▍▅▍▉▉██▍▉▄▇▇▉ ▍▅█▊▇ ▅▄ █▊▆█▉ ▄▅▍▍▉▇▇▊▍▆▍▉ ▄▍▇▆▊▅ ▇▌▊▄▅▉ ▋▊ ▉▆▋ ▍▆▌█▄ ▉▇█▄ ▄▋▄▋ ▉▋ ▆▌▉▇▌▋▋█▌▉
removed stupid native -> managed -> native process that was happening, shore distance and vectors calculated as native and remain native
added normalized heightmap vis to baked ShoreVectorData
halved min/max of topology query radius range, now [8,16] mapped from heightmap range of [4,0]
- significant reduction in topology query cost, will need to test some procgen maps that water isn't now invisibile in some niche case
further improvements
- reuse positions and heightmap data from previous query in topology query, we were doing both twice
- moved topology radii gen, reading of topology, and processing into water mask into a set of 3 jobs scheduled under one handle and completed
initial step towards making proper shore vector generation fast enough to avoid blitting data for the deep sea
- Native DistanceField methods using jobs and burst
- jobified various other parts of the shore vector generation
- fixed batched HeighMap position query not using the deepsea data
- about a third of the previous runtime currently but still too slow
reworked shoredata blitting to handle rotated bounds properly and not clamp-extend outside pixels
merge from non_convex_col_cleanup
added comment comp to sign
large banner sign pole as convex hull set
beanbags as generated convex hull set
wooden window shutters as primitives
merge from bot_sleeptarget_collider_fix
force sleeping bots to refresh collider size when being removed from the BotColliderWorkQueue, catches edge case for using sleeptarget on spawned bot players
merge from boat_optim_pass
cleaned up ApplyCorrectionForces a bit
removed another deeper nested duped IsValid check on the entity
remove duplicated unity-null check in StorageFuelSystem, replaced with IsRealNull usage as GetFuelContainer ensures entityref returns a valid result or true null
switched GetWaterSurface for GetWaterLevel in BaseBoat correction forces
removed ClampThrustForcesToPlane option that we never used, removed some pointless plane usage
reject player boat push from ladder
merge from better_steeringwheel_clipping
- compile fix
▅ ▅▅██▉ ▇█▊▅▉▅▌▍█▉▆▌▊ ▄▋ ▉▆▋▇▅▌▉ ▊██▉▄▆ ▋▇▅▌▍ ▊▉▍▋▄▍▉▊▊
merge from better_steeringwheel_clipping
▅ ▉▋▄▉▌███ █▄▉█▍ ▄▆▇▉▉▆█▅▍ ▄▅▌▅▇▅▋▊ ▄▆▆▄▆▉█▉▉ ▄▇▊ ▋▌▌▍▊█▄▍ ▊▅ ▅▉▄▊▋▌▋▊▅ ▇▊▋▄▇ ▅▌▌▋▌▍ ▄▆▅█▅▅▇▌▉▌ ▄▌▍ ▌▅▊▄▉▋▊▌▌▍▄▄▄▌█▋▋▊▆▄▋▅▌█▉█▊▉▌▄ ▆▆ ▋▋▅▆▉ ▌▆▍▆▄▅ ▇▄█▅▆▍▅▌▆▌▋▆▋▆▅█▅▅ ▄▄▌▊▋▆▆▋ ▅▆▌█▇▋▊▄ ▉▇▄▇▇▊▊▆▄█▍▉█▄█▇ ▅▌▆▍▆▋ ▇▆ ▌█▋▌▍ ▌▉▄▊ ▋ ▋▋█ ▋▋█▇▉▊
merge from deepsea_heightmap_clearing_fix
clear deepsea heightmap data properly and centralized deepsea terrain data clearing in the manager