Download

Difficulty showing only certain actors in a SceneCaptureComponent2D

Apologies for the long-winded intro to this - it is not easy for me to describe concisely.

If you’re familiar with ArmA, you’ve perhaps used the ShackTac UI mod, which presents a nice, minimalist awareness dial that captures not only heading, but also the location of nearby allies.

I am trying to replicate the basic function of this in my Unreal project. To do this, I’m using a 2D SceneCaptureComponent, and at the most basic levels of functionality, it pretty much works. I can see a top-down presentation of the dial around my character, which should in theory form the basis for this fancy UI. The problem is that it’s showing everything - other meshes, effects, etc. I know I can turn many of these off using the General and Advanced Show Flags in the CaptureComponent which has worked for some things related to the character, but it doesn’t solve the core issue - that I need only what I specify to appear. I’m still seeing the static meshes I’m walking on within the world.

So, I tried tagging both the Static Mesh Component and a Child Actor version of my compass dial using a Component Tag, and then in blueprints, trying to tell the Capture Component to use only what I specify. Based on the nodes available, this is possible. I can see there is a “Get All Actors with Tag” node and a “Show Only Actor Components” node, and yet I am seriously stuck trying to understand how to piece the two together.

The dial - it works, basically.


The problem.

I hope I have explained this well enough. I’m also not 100% sold on using a CaptureComponent, although this idea seemed to be the easiest and most extensible to other parts of this top-down UI method. So, if anyone has ideas on how to replicate this UI idea in Unreal, I’m all ears.

Thanks for the help!