404 Commits over 153 Days - 0.11cph!
more cleanup, profiling, and some micro optim
cherry pick carve radius change
dropped carve radius for testing
cleanup and correct ref access to ref readonly access where appropriate
set wip material as current ice material
added playground.sculptures test scene with its own filestorage db to store the sculpture data
server handles decoding saved sculptures from disk properly
made server file storage a convar - default behaviour retained
added playground.sculputres.sav TestSave
- grid of some differently carved sculptures for material testing
sculpture serialization
- added FileStorage type for sculpture data (lz4 compressed)
- changed sculpting data flow so changes are made on the server and then retrieved by the client
dropped block scale a little
switched out ddraw hitguide for basic prefab setup and added some lerping to target pos to offset delay from interaction tick rate
showing some visual feedback on where player will chip into the sculpture if they're holding a weapon with a compatible damage type (just ddraw for now)
prefab adjustments and cleanup
recalculating nrender bounds properly after vertices and indices assignment
giving mesh the same name as its entity
cleanup on carving function
sculpting progress
- corrected offset to align pivot to bottom of block
- basic carving, takes a small radius chunk out on-hit with piercing damage
- corrected mesh update to clear previous data correctly
- corrected physics mesh bake to assign collider back correctly
sculpture changes and cleanup
- controls for scaling and offset
- mesh collider has correct mesh assigned
- removed rpc for switching between native/managed (only native now)
introduced manager class that allows marching cubes to be enqueued and then processed in parallel (only iterating and processing thoses that have requested it)
- parallelises the marching between systems
- parallelises the physics mesh baking across job threads as well
reduced per-cube temp allocs
converted to use burst and the jobsystem
- still needs thought on multithreading, but about a 10x speedup from burst usage already
packages
burst 1.8.16->1.8.17
collections 2.5.1
further marching cubes work
- separating sculpting data from marching cubes view through a sampling interface
- pruning pass after initial generation to merge duplicate vertex data (21k verts to 3k verts in current test setup)
- some vertex generation changes that would let us interpret non-boolean datasets better
switched jagged array lookup table to multidimensional, should play nicer with native code when I convert it later
re-enabled flowMovementScale on kayak
slow and greedy starting point for marching cubes
- not calculated in correct coordinate space or interactable, but can at least present the correct mesh for a given 3D dataset
kitbashed ice sculpture stub prefab setup
- only diverting damage of allowed type at the moment
BC: fixing cloth flinging away with large rotation changes
- changed rotation origin to use player model transform's rotation, rather than its rotation field, as it depicts body root rotation better
- made collision distance thresholds tunable and brought it down on the dracula cape due to its bone density
- brought the floor up on the dracula cape damping curve slightly
wearables do proper bone retargetting in the skin viewer
- fixes issues with dracula cape bones not retargetting and extending the render bounds by an insane amount (appearing invisible)
reduce root motion strength on dracula cape BC assets (visually feels about the same, but less likely to explode on vehicles)
▍▌▅▉▍▆▄▄ █▍▍▌ █▇▄▊█ ▉▅▇▅██▄▉ █▆ ▄▄▅▌ ▄▋ ▍█▅▊▇ ▋▆▄ ▌▋▅ ▌▆▆▅▌▆█▌▊▇ ▅▉▇▄▍▉▍▍ - ▍▇▅▌▅▉▍▌▍ ▄▋ ▍▇▇▊▇ ▆▆ ▅▄▆▌▊▄ ▇█ ▌▌ ▋▊█▆▆▄▌ █▍▍▅▋▆▍▆▇ ▄▋▄ ▋▍▄▋▋ ▇▌ ▊▅▊▅▉▊▊▅ ▅▇▊▉ ▊▆█▅▇ ▇▄▇▌▇▉▇ ▍▉▇▄▍▊▌▋ ▌▇█ ▊▌ ▌▇█▅▄▌▍ ▊▉▄ ▋▆▋▋█▊ ▄▍▇▊ ▆▅▍▇▉▅ (██▍▊▇▌▌▆ █▍▊ ▆▋▉▉▋█▉▊ ▋▅ ▍▇▄ ▌▇▄▍▊▋ ▇▅▉▍ ██▊▌▋▍█ ▉▆ ▉▄▌▆ ▌▄▉▊█▋▋▄█▄)
BC: separated origin adjustments between crawling and incapacitated wounded states
- stop cloth getting caught around the head when incapacitated, while trying to minimize clipping (local gravity towards feet rather than orientating to world gravity)
merge from main/Halloween24
BC: handling null player properly in teleport check (player preview)
BC: bone transforms and bone states reset with player teleports (including mount/dismounting) and also reset with extreme single-frame angle changes
- stops cloth freaking out when you switch seats that are facing opposite directions (pedaltrike is the main offender)
- exposed LastTeleportTime in BaseMovement for this