If it’s just a static mesh placed in the world, what you could do is do the same thing but use line trace for objects instead (I think it’s better that way) and set material opacity to make it see through. So you would need a copy of the material on the roof and set it’s opacity to “0” and just swap material on hit instead of toggling visibility.
Edit: Did a quick test with toggling visibility. Works as well. You just get the Hit Component and toggle it’s visibility