How do I get hit location from mouse under the visualy occluded area if real collision blocks the hit?
I think I wrote it unnecessarily, this is not the answer to your problem. I gave a slightly different solution, in my opinion it looks better in the game when you can’t see the whole upper floors together with the side walls and all floor content.
Answer the question: Before entering the building, remove collision from static mesh the upper floors. Or change the collision channel in sm.
You can’t see the floor, so you click on the stairs. When the character enters them, he stops detecting collisions with the floor, and the floor remains unhide.
What is on my project is suitable for roofs or individual floors. it may be more but a better way is:
If you want to have multi-storey buildings:
First Navigation must be dynamic.
The upper floors cannot have navigation because the mouse cursor is detecting it. That’s why after unhide the upper floor you change (Collision Chanel) and navigation is built on this floor.
- It is best to build the building in bp, make a collision box in front of the stairs (or in the middle of the stairs) which, after detecting a collision with the player, reveal the next floor.
By default, the upper heels are hidden and have no collision when you touch the collison box in front of the stairs. like on the picture.
- The building was not built in Bp. You enter the collision box - and start MultiboxTraceForObject (the size of the box is the size of the upper floor) and change all static mash (floor): as in the picture.
That’s how I figured it out and works well.