Better way to share Blueprints on the web

Hi everyone

I don’t like to do self-promotion but we believe that this tool could make sharing Blueprints in the web easier and more interactive.
Me and a friend of mine are working on a standalone JavaScript library to visualize copied Blueprint code in the webbrowser. The visualizer enables copy and pasting of Blueprint code from the webbrowser to UE and vice versa.

It would be awesome if you give it a try.
https://joined-forces.github.io/klee/

Before I forget: It is open-source and licensed under MIT license.
(Yes, we know there is another solution to display Blueprint code on the web. It requires an account and you have to integrate it via iframe. We wanted something easy without the need to enter your data on anothr platform)

Let us know what you think about this little tool :blush:

3 Likes

First: This kind of stuff is so fun to work on. I’m sure you had a blast! And good on you for not worrying about licensing.

Second: I don’t find screen shots to be particularly troublesome for sharing a visual representation. I’d honestly be more interested in something which pretty-prints the pretty-printed text (or even the blueprint itself!) and makes it easy to read/understand as “text mode blueprints.”

Third: It seems the JavaScript renderer doesn’t preserve straightness from the copied graph. Example:

1 Like

The text-mode Blueprint sounds great to me as well. Do you think about a pseudo-code representation?

Yes there are still missing nodes and others that don’t align exactly as they were displayed in Unreal Engine.

I don’t know exactly what the best representation would be.
One would be something like graphviz/dot format. That might end up looking like JSON without quotes around the strings…

One would be something that recursively descends, breadth-first, from the return/final node. That would end up looking something like a typical functional program, perhaps? The benefit of this is that it would explicitly write out when Unreal re-invokes a pure function for each time the value is used, which is something I still sometimes get bit by (performance wise.)

The real challenge is control flow loops. No hierarchical/recursive representation will do that well.
Generating pseudo-code might be the best option! I think that might be related to how “nativize blueprints” got started… and then apparently abandoned/deprecated?