Different decal approach, guidance needed.

physical materials. Create and apply physical materials to your standard materials and then you can detect what physical material you have hit (break the hit result for the details) and therefore what surface type you have. I have read about it a couple of times but not actually used it myself. Google will find specific instructions with little bother I think.