Unreal Engine Blueprints Actor and Component Interaction 5 — Questions and Answers
Question 1: How do you get a reference to the Player Controller from inside a non-player actor Blueprint?
- Get Player Controller node with player index 0 (Correct answer)
- Get Controller node
- Get Player Pawn then Get Controller
- Get Owning Player
Correct answer: Get Player Controller node with player index 0
Get Player Controller returns the PlayerController for the specified local player index, accessible from any Blueprint in the world.
Question 2: What is the correct way to move a Static Mesh Component to a new world location each frame in Blueprints?
- Call Set World Location on the component in the Event Tick (Correct answer)
- Use Add Force on the component every frame
- Call Set Actor Location on the owning actor
- Use Set Relative Location with delta time
Correct answer: Call Set World Location on the component in the Event Tick
Set World Location called on the specific component reference moves only that component to the specified world-space position.
Question 3: In Unreal Engine Blueprints, what does 'Register Component' do for a dynamically created component?
- Adds the component to the actor's component list and initializes it in the world (Correct answer)
- Saves the component to the asset registry
- Makes the component replicable over the network
- Registers the component with the Physics engine only
Correct answer: Adds the component to the actor's component list and initializes it in the world
After creating a component at runtime with 'New Object', calling Register Component finalizes its creation by adding it to the actor and initializing it in the scene.
Question 4: Which event fires on an actor when it is first placed in or streamed into the level?
- Event Begin Play (Correct answer)
- Event Actor Loaded
- Event Initialize
- Event Spawned
Correct answer: Event Begin Play
Event Begin Play fires once when the actor becomes active in the game world, whether placed in the editor or spawned/streamed at runtime.
Question 5: What is the purpose of the 'Get Socket Location' node on a Skeletal Mesh Component?
- Returns the world-space position of a named bone socket on the mesh (Correct answer)
- Returns the mesh's pivot point location
- Gets the location of the component's attachment parent
- Finds the nearest socket to a given world position
Correct answer: Returns the world-space position of a named bone socket on the mesh
Get Socket Location queries the current world-space position of a named socket or bone on the Skeletal Mesh, accounting for animation pose.
Question 6: When two actors' collision components overlap, which actor's 'On Component Begin Overlap' event fires?
- Both actors' overlap events fire if both components have overlap enabled (Correct answer)
- Only the actor that moved fires the event
- Only the stationary actor fires the event
- Only the actor with higher collision priority fires
Correct answer: Both actors' overlap events fire if both components have overlap enabled
Unreal fires overlap events on both involved components as long as each has its collision response set to Overlap for the relevant channel.
Question 7: How can you prevent a spawned actor from being destroyed when the level transitions in Blueprints?
- Call Set Actor Does Not Persist (not available) — use Game Instance to store references instead
- Enable 'Persist Between Levels' in the actor's Details panel (Correct answer)
- Call 'Keep Actor On Level Change' node
- Set the actor's Relevancy to Persistent
Correct answer: Enable 'Persist Between Levels' in the actor's Details panel
Checking 'Persist Between Levels' (or 'Should Persist' in Blueprint settings) on an actor prevents Unreal from destroying it during seamless level transitions.
How do you get a reference to the Player Controller from inside a non-player actor Blueprint?