508 Commits over 183 Days - 0.12cph!
re-added early exit on flipped check loop
minor cleanup and crunching meshes down for 20% reduction
reduce vertex lookups in simplification
switched out normal parallel check in simplification with a dirtier cross product based one to remove a couple of normalize calls
- 75% perf improvement
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)
▍▌▅▉▍▆▄▄ █▍▍▌ █▇▄▊█ ▉▅▇▅██▄▉ █▆ ▄▄▅▌ ▄▋ ▍█▅▊▇ ▋▆▄ ▌▋▅ ▌▆▆▅▌▆█▌▊▇ ▅▉▇▄▍▉▍▍ - ▍▇▅▌▅▉▍▌▍ ▄▋ ▍▇▇▊▇ ▆▆ ▅▄▆▌▊▄ ▇█ ▌▌ ▋▊█▆▆▄▌ █▍▍▅▋▆▍▆▇ ▄▋▄ ▋▍▄▋▋ ▇▌ ▊▅▊▅▉▊▊▅ ▅▇▊▉ ▊▆█▅▇ ▇▄▇▌▇▉▇ ▍▉▇▄▍▊▌▋ ▌▇█ ▊▌ ▌▇█▅▄▌▍ ▊▉▄ ▋▆▋▋█▊ ▄▍▇▊ ▆▅▍▇▉▅ (██▍▊▇▌▌▆ █▍▊ ▆▋▉▉▋█▉▊ ▋▅ ▍▇▄ ▌▇▄▍▊▋ ▇▅▉▍ ██▊▌▋▍█ ▉▆ ▉▄▌▆ ▌▄▉▊█▋▋▄█▄)