1 Year Ago
WIP: Impact and Scrapes (#1072) * strip impact sound stuff from native * put it in c# commented out for implementation there later * Strip CPhysSurfacePropertiesSoundNames * Add GetFrictionNotifications() to IPhysicsWorld * Add FrictionEvent, call c# with friction notifications * Add OnFrictionEvent c# side, add some log for test * Add GetFrictionNotifications override to CPhysicsWorld. put note to call shutdownfrictionsounds in entity InternalDestruct for later * Start re-impl impacts in c# * Remove some logs, ensure impact sound plays from body position * Strip m_audioParams / CPhysSurfacePropertiesAudio * Add ScrapeRough/ScrapeSmooth to Surface sound def, add RoughnessFactor and RoughThreshold * Reorganize code + implement friction sounds in theory * Call StopFrictionSounds in entity destruct * Add friction sound to list.... some debug logs... * Reverse MathX.approach params (it was this way in native :S) * Add some stuff to entity similar to StartTouch/Touch/EndTouch but for scrapes - revise later * Use ScrapeEvent incase we need to add/change params later * Call it ScrapeEventData like CollisionEventData and move it out of Entity * Fix access violation * Test * Remove ScrapeEvent / Entity.Start/EndScrape stuff for now we can look at that later