11 Months Ago
Add props to Surface for impact decal and scrape effects / decals Use ContactPoint + SurfaceNormal to pass into AddImpactSound Let's add decals and particle effects for impacts but try only doing it if speed > 30 - maybe we configure this per surface? Add PhysicsImpact struct and use that to seperate effects for Hard and Soft impacts in Surface description (decals + fx) Correctly spawn soft or hard physics impact particles + decals based on squared speed Add normal from first valid manifold on contact to friction events to pass to C# Enable/Disable physics impacts and scrape events as props for now, pass normal from fiction event to AddFrictionSound and create effects where necessary Also grab contact center from first manifold and pass to C# Use contact pos for decals + effects, try to base effect frequency on energy volume scale, fix decal placement remove particles on friction effect stop Set destroy time to 0.5 (this is a failsafe anyway) Don't have particles follow entity, do it ourselves so we can set to actual contact pos Set forward for scrape particles to contact normal Use method for getting inherited surface values if necessary to avoid repeating same code