I really like the C++/BP merge idea. Sad to see that it’s too much work at the moment.
However, could we get the ability to write small C++ functions directly in the editor?
Most of the time I use blueprints, but sometimes I really cannot grasp how something would be structured via visual scripting. Meanwhile, those same things are often intuitive for me in C++.
At the same time, implementing a function in C++ requires a variety of steps.
I need to start up Visual and hope that Intellitext doesn’t bug out and give me bogus error messages. Then I write my UFUNCTION() stuff in the header, try to remember which argument I needed to use to make this blueprint-usable, and start writing the function.
Then I need to pray that I won’t need multiple restarts of the editor to have the effects of a compile and hot reload stick. They don’t always work from the get-go.
And then I need to recompile and wait for the hot reload with every single edit. Which, if the hot reload doesn’t stick once in a while or Intellitext goes crazy on a whim, can really extend the times between iterating and testing.
That’s a lot of work for the ability to write twenty lines or so of code. I want something more responsive.
I would be really grateful if I could just, whenever I’m prototyping stuff and need a small function that doesn’t warrant going the C++ route, stay in the editor and type everything up in there.
It could be a new type of asset. Or it could be the ability to add pure text functions in a blueprint function library.
Or it could work like the “math expression” node that already exists, just with a slightly bigger editing field.
Personally, I don’t even need syntax highlighting. Just a way to use text instead of nodes once in a while.
Ideally it would somehow work without compile times, but I would assume that that’s a pipe dream.
I really hope I didn’t just suggest something that looks benign but is as complicated as the OP post.
From a user standpoint, it would probably be more reliable (albeit also a bit less flexible and more mouse-heavy) if inputs/outputs and variables/references were defined from the editor UI instead of via text. That way, the correct names of things could be displayed by the editor, which would factor into the “quick prototyping in C++” aspect. Or maybe that would be too dumbed down.