Hi!
I’m fairly new to Unreal Engine and am working on my first game using UE Blueprint programming since January. I’m using Blueprint interfaces for composition and always prefer functional programming if possible.
Using BPIs some “issues” occured making my functional programming life a little harder and browsing through the forums I was wondering if anyone else ever had the same problems and was wondering why there are some of the limitations.
-
No pure version of BPI functions.
Personally I use as many pure functions as possible and this actuality makes the workflow more complicated. To get a pure version of my BPI function, I can create a container function in a blueprint function library, however this leads to many functions doing the same thing and having the same name and to having to create container functions for every BPI function. -
BPI functions are events unless you return something.
This seems really strange to me. There are always cases where I do not want to return anything, because the call is the end of an execution line.
However I am forced by BPIs to return something to not have an event taking space in the event graph. Personally I try to use as less events as possible and try to keep the event graphs clean. Most events can be converted to functions via rightclick. However this does not work for BPI events.
There is a one dirty workaround for this. First create a BPI function with return. Then write the function in your blueprint and delete the BPI return afterwards. However this means I have to do this for every implementation.
So these are the two things I wanted to address. Am I missing something here? Are BPIs not meant to be used like I am trying to do?
Sorry if a missed an already existing thread discussing this topic.
Kind regards