Fix collider overriding shape surface with default surface when model has already set it
PhysicsShape.SurfaceMaterial updates the cached surface so it doesn't get into a situation where native and managed surface is out of sync
Play impact sound from the impact surface, not the shape surface (they can be different on meshes!)
Initialize native physics shape material to default so there's always a valid surface