Graph images
With graph images on (the default), an export saves a PNG image of every Blueprint graph that contains logic and shows it on the asset’s page.
How images are made
Section titled “How images are made”Blueprint Scribe draws each graph with the Blueprint editor’s own graph widgets, so nodes, pins, wires and comment boxes look as they do in the editor. The graph is drawn off screen, in a read-only view; nothing in your Blueprint changes and no editor window opens.
Each image covers all nodes of the graph with a 32-pixel border around them. Images are saved to images/<asset id>/<graph>.png in the output folder. The file name is the graph’s path inside the Blueprint, with every character other than letters, digits and - replaced by _ (for example EventGraph.png or EventGraph_Collapsed_Graph.png for a collapsed graph inside the Event Graph).
Which graphs get an image
Section titled “Which graphs get an image”Every graph of a Blueprint that contains logic:
- Event Graphs, functions, macros and interface function implementations,
- the Construction Script, when it contains nodes,
- collapsed graphs, which are documented as sub-graphs of the graph that contains them,
- the anim graph, state machines, states, conduits and transitions of Animation Blueprints.
A graph that only has its entry and result nodes, or only a call to the parent function, gets no image. Structures and enums have no graphs.
On the HTML page, a function or macro shows its graph inside its card. All other graphs, such as Event Graphs and collapsed graphs, are shown in the Graphs section with their name, kind and node count. Click an image to open the graph viewer. The Markdown files embed the same images, and scribe.json lists each image’s path and size in graphs[].image and graphs[].imageSize.
Zoom and maximum size
Section titled “Zoom and maximum size”Two options control the size of the images. They are on the Export page of the panel and in the settings:
| Export page | Setting | Default | Range | Meaning |
|---|---|---|---|---|
| Zoom | Graph Image Zoom | 1.0 |
0.25 – 2.0 |
Zoom at which the graph is drawn. 1.0 is 100 %. |
| Max size | Max Graph Image Size | 4096 |
512 – 16384 |
Longest side of an image in pixels. |
When a graph drawn at the chosen zoom would be larger than the maximum size, the zoom is lowered step by step until the image fits. Like the Blueprint editor, the graph view only has certain zoom levels, so the zoom used can be a little lower than the one you set. The lowest zoom is 10 %; a graph that doesn’t fit even then is cut off at the maximum size.
At low zoom levels the Blueprint editor draws nodes with less detail, and so do the images. If the images of your largest graphs are hard to read, raise Max size (bigger files) or split those graphs (see the Large graph rule).
Requirements
Section titled “Requirements”Graph images need the editor user interface: Slate and a renderer. They are rendered when you export:
- from the editor panel or the Content Browser,
- from Python or an Editor Utility Widget in a running editor,
- from an editor started with
-ExecutePythonScript(see below).
They are not rendered in commandlets, including the TABlueprintScribe commandlet, or when the editor runs with -NullRHI. In that case the export writes the pages without images and logs this warning:
Graph images were skipped: they need the editor UI (they are not available in commandlets).Images are only rendered when the HTML site or Markdown is exported. An export with only JSON or AI-ready text skips them. The AI-ready text describes each graph as text instead; see Graph logic.
While images are rendered, a Rendering graph images… progress dialog shows each graph. Cancel skips the remaining images; the pages are still written, and the export reports “Rendering graph images was cancelled.” If a single graph can’t be rendered, the export continues and lists a warning with the asset and graph name.
Images in automated runs
Section titled “Images in automated runs”To get images without clicking in the editor, start the full editor with Unreal’s -ExecutePythonScript option and a script that scans and exports. The editor waits until the Asset Registry has discovered all assets, runs the script and closes when the script is done. This needs the Python Editor Script Plugin and a machine that can open the editor window (not -NullRHI).
-
Save a script, for example
export_docs.py:export_docs.py import unrealscribe = unreal.get_editor_subsystem(unreal.TABlueprintScribeSubsystem)report = scribe.scan_project(False) # Included Paths from Project Settingsoptions = scribe.get_default_export_options()options.output_directory = "Docs/Blueprints"result = scribe.export(report, options, False)if result.success:unreal.log(f"Blueprint docs: {result.pages} pages, {result.images} images in {result.output_directory}")else:unreal.log_error("Blueprint docs failed: " + "; ".join(result.errors)) -
Start the editor with the script:
Terminal window "C:\Program Files\Epic Games\UE_5.6\Engine\Binaries\Win64\UnrealEditor.exe" "C:\Path\MyGame.uproject" -ExecutePythonScript="C:\Path\export_docs.py"Use
UnrealEditor.exe, notUnrealEditor-Cmd.exewith-run=: a commandlet can’t render images.
Render a single graph
Section titled “Render a single graph”render_graph_image in Python saves one graph as a PNG, with its own zoom and maximum size:
import unreal
scribe = unreal.get_editor_subsystem(unreal.TABlueprintScribeSubsystem)blueprint = unreal.load_asset("/Game/Blueprints/BP_Door")scribe.render_graph_image(blueprint, "EventGraph", "Saved/BP_Door_EventGraph.png", 0.75, 8192)