What is "GEN_VARIABLE" and "C_0"?

I have lamp post blueprints set up that consist of a mesh and a spotlight component. (Call this blueprint BP_Streetlight.) I perform traces between the lamps and the player to see if he is in the light. Close to the origin of the map the traces hit positive on two weird things:

  1. A spotlight component with no parent named “Spotlight_GEN_VARIABLE”
  2. One of my streetlight blueprints named “BP_Streetlight_C_0”

Both of these items are invisible, cast no light, and don’t show up in the outliner. I am debugging my line traces but the yellow lines point to nothing. Any idea what is happening here? Where do GEN_VARIABLE and C_0 come from?

Thanks in advance for the help :slight_smile:

_GEN_VARIABLE is a temporary Actor usually. They usually show up if you create them during runtime but mess up to attach them properly or similar (hard to tell without knowing your code) check if you got some Code that creates this Component.

_C_0-n just gets added to the BP as internal name to avoid name collisions in C++ so thats nothing special. It still reffers to your BP_Streetlight in that case.

Double check your Collision settings on your Mesh and other primitive Components.

Good Luck mate.

Thanks! All my spot lights are inside blueprints that are placed in the level, nothings is being generated dynamically. I’ve found a hacky solution by just deleting the component when it gets detected which is working alright.

When you say “check your collision settings”, do you mean that the pawn’s collision settings might somehow be creating extra spot light components?

Did you find cause? I have same issue.