FAQ: Blueprint Visual Scripting

FAQ includes content originally written for UDN.

Can you recompile Blueprints (BP) during PIE?

  • Enabled on AnimBP, not generally
  • There is an experimental setting to allow certain subclasses to be recompiled during PIE.

Are there best practices for managing blueprint/UMG assets between branches?

  • There is a BP tool (diff tool) but for all the other assets, teams pick one and just choose which branch wins and do the work for the other streams. Just need to coordinate
  • We rely on prevention rather than solving merging problems. There is a function in content browser you can use that comes with warnings and such too

Tool for sharing BP visually outside of UE4?

  • No, nothing officially supported

Are there any tools to do reviews on Blueprints in the same way we can do code reviews? If not, what are best practices for doing reviews of blueprints?

  • We don’t have tools that focus on Blueprint code reviews specifically. Using the Blueprint Diff tool is helpful to see what has changed in a revision. Also, having a Blueprint coding standard is helpful.

Is there a way to recompile all blueprints? Maybe something we can run from the command line?

  • BPs are recompiled on multiple occasions (editor load, cooking…)

The Asset Cleaner marketplace plugin does a good job of identifying unreferenced assets. Is there a way of similarly identifying unreferenced: functions, macros, events?

  • Not really. It would be possible to write some C++ code based on FStreamSearch and SFindInBlueprints. Those are used by the ‘Find references’ option in the BP editor. It might be a costly\long search if you want a full analysis of the project.

Nesting Blueprints - intended workflows?

  • At the moment, the only mechanism available for ‘nesting’ Blueprints is the child actor component. This isn’t really nesting in the way most people would want, but rather it ties the lifetime and positions together, but they are technically independent actors. We’d like to improve the way that blueprints can be nested, but it’s currently not on the roadmap.

State of Child Actors?

  • Not used heavily in terms of scaling to 1000s of things, but we do use it wherever it makes sense
    • Supply drops, balloon and crate are separate actors with child actor comp
  • We’d like to have fully nested hierarchy, child actor components are just what we have today
  • If all you need is the transform, there are some other tools
    • On any vector/transform property, can mark to show a 3D widget
    • If just attaching things in level and not BP editor, you can use sockets

See more about Blueprints on the Knowledge Base.