How can I make a shader that scales up and changes texture based on where the mesh was impacted?

I’m trying to make an effect similar to the dominator in Psycho pas. See the clip below for reference:

I don’t necessarily need the whole answer. But if you could point me in the right direction I would really appreciate it.

  1. setup render target for hit mask.

use hitmask as mask for damaged areas in character material.

to change texture, use Lerp node with usual texture, damaged texture, and hitmask

to scale mesh in damaged area, use world position offset. for example you can add some offset value multiplied by vertexNormal node.

you can also use tesselation

Epic! Thanks dude!