I just don’t like the seemingly VERY popular approach using component begin overlap. It seems as though that would not work well if the player drops a ton of stuff from his inventory in one place. what if he wanted to pick something back up? There would be lots of collisions taking place at the same time and instead of picking up the item the character seems to be looking at, it would likely just pick up the one closest.
I made an illustration of kinda what I want. I made such an animal using GameMaker 8, but I $h!+canned those projects because GameMaker’s 3d support is very poor.
I know, my artwork is not great, but you’ll get the idea. The blue thing is the camera, the question marks are mesh items or objects with which the character may interact (an item to pick up, a door to open, a switch to active, etc.), the gray dot is an imaginary point that stays fixed above the character’s right shoulder. The red line is a vector shot from the camera and in the direction of the imaginary point (gray dot) and the vector extends a certain distance that roughly represents what may be reachable by the character. Only those meshes that are (figure A) the first to be hit by the vector and (figure B) actually in the line of the vector, register as selected. The mesh will get highlighted as long as the vector is touching any part of it. That imaginary point (gray dot) is represented as a crosshair on the screen so the player knows what is being “aimed at”. Like pointing a lazer.
It worked beautifully, and I am sure it can be replicated in UE. I just need to figure out how.
I know what you mean about the mouse not being usable to rotate the camera AND be free at the same time. That makes sense. I should have thought that through a little. But a crosshair the camera can aim through I think is doable. The player/character would have to rotate with the camera, though. So you would most always be looking at the character’s back, which is fine with me.