Examples — Wall Plugin
Examples
The plugin ships with a test map and a set of example Blueprints to demonstrate the core workflows.
Included example assets
| Asset | Description |
|---|---|
PlaceableWall_BP | The base Blueprint wall actor. Place this in any level or spawn it at runtime. Extends AWallLineActor. |
Window_BP | Example window reveal. A rectangular window opening with a frame mesh. |
Door_BP | Example door reveal. A door-shaped opening with a frame mesh. |
PluginExampleController_BP | Example player controller demonstrating the runtime placement workflow, including reveal dragging. Used in the test map. |
Test map
The plugin includes one test map that demonstrates:
- Multiple connected walls forming room layouts
- Walls with doors and windows registered
- Runtime wall placement via
PluginExampleController_BP - Example walls with different reveal shapes (rectangular, and custom shapes such as circular and star-shaped openings)
Example: Editor wall placement
See Build Mode for a complete walkthrough of:
- Placing walls by clicking in the viewport
- Setting height and width
- Using grid snap
- Painting wall surfaces from the editor
Example: Runtime wall placement (player-controlled)
The general runtime workflow:
- Line-trace from the camera to find the floor position.
- Spawn
PlaceableWall_BPat the start point. - Each tick: call
Set Start And EndandConstruct Wallto follow the cursor. - On confirm (second click): call
Construct WallandPositioning Finalised. - Check for neighboring walls, set neighbor references, call
Construct Wallon neighbors.
See Wall Placement for the full Blueprint workflow.
Example: Runtime reveal dragging
From the PluginExampleController_BP behavior (described in official documentation):
- Press Play in the example map.
- Click on an existing reveal actor (door or window).
- Move the cursor to a different position on the same or another wall.
- The reveal snaps to the wall’s surface and updates the hole.
This demonstrates Setup Yourself and Register Reveal / Un Register Reveal being called at runtime.
See Doors and Windows for the Blueprint implementation.
Example: Custom reveal shape
The official documentation describes creating a custom reveal texture in Blender:
- Create a plane in Blender with a boolean cutout in the desired shape.
- Bake the result to a texture where the hole area is white.
- Import into Unreal Engine as a
Texture2D. - In a Blueprint child of
ARevealBase, overrideDraw Your Reveal Formand draw the texture onto the canvas atPosOnTexture.
See Doors and Windows – Creating a custom reveal shape.
Example: Saving and loading walls at runtime
// SaveGetWorldSubsystem<UWallGameSubsystem> -> Save Walls Slot Name: "" ← uses default slot (map name) User Index: 0
// Load// Register a Blueprint that implements IWallLoadListenerGetWorldSubsystem<UWallGameSubsystem> -> Register Wall Load Listener (self)GetWorldSubsystem<UWallGameSubsystem> -> Load Walls Slot Name: "" User Index: 0
// In OnWallLinesLoaded(Lines):// For each line in Lines:// Spawn PlaceableWall_BP// Call possess_basic_line(line)See also the editor panel’s Save Walls and Load Walls buttons in Build Mode.