Changing a texture of a face on collision

Is it possible to change the texture of a face at the point of collision?

For an example;
A box hits a flat wall and the wall (The faces where the box hits) changes its texture

Thank you for the assistance

Yup.

It’s going to take some work, though. You’ll have to find the triangles that has been hit, detatch them into a new mesh, give that mesh a new mesh renderer, and set the texture on that one.

An alternative is to move the hit triangles to a different submesh. That way you can have the “hit” material on your wall or whatever already set.

Both of these methods will take some work, though. Finding what triangle(s) were hit is probably easiest by using the collision’s contacts list, and raycasting against the collider at those points, and using the raycast’s triangleIndex. You’ll also need to understand how meshes work.

A much easier alternative would be to find some tool that allows you to create decals. Those are simply flat textures that you slap on top of other things. This is how bulletholes are made in the vast majority of games outside the AAA-side of the industry.