[Critical Bug] - BP Corrupt or bug in 4.2.0 w/ Standalone Mode

Awesome!!! Thanks , really appreciate it :slight_smile:

Looking forward to hearing back from the technician, thanks and take it easy

Hi

I just have some quick questions about your blueprint.

In this blueprint it looks like you are attempting to spawn and place a series of objects. Is that correct? For something like an infinite runner?

What type of blueprint is it (level, actor, gamemode)?

And could you also post some higher res screenshots of the blueprint so we can better follow it?

If youā€™re not comfortable posting details about your game please feel free to PM me on the forums.

Thanks, TJ

ā€œIn this blueprint it looks like you are attempting to spawn and place a series of objects. Is that correct?ā€ - Yes that is correct

ā€œFor something like an infinite runner?ā€ - No actually but it can add as many instances of an object but usually is determined ahead of time. Itā€™s used in another BP or two that I create to help create levels and be much more productive and quicker in that process.

ā€œWhat type of blueprint is it (level, actor, gamemode)?ā€ Itā€™s base class is the Actor UClass

ā€œAnd could you also post some higher res screenshots of the blueprint so we can better follow it?ā€ Sure, I am creating this prototype and was going to talk to Epic about it as well but I may be open ahead of time just sending you the asset itself but if we could do it privately, iā€™d appreciate that.

Thanks TJ, really appreciate you helping me get to the bottom of this on a Saturday. Also, Id be open to Skyping with you if that will help you understand it better and I can fully explain anything else you need to know. Thanks again

If you would like to send the assets, please feel free to send me a link by private message on the forums. If you could use something like Dropbox or Google Drive that would be preferred.

Thanks, TJ

Hi

I sent you a PM on the forums but I just wanted to log it here as well.

I was able to reproduce the issue in-house and Iā€™m going to escalate it to one of our developers. I will let you know as soon as I hear something.

Thanks, TJ

Hi

In EasingFunctionsPlugin.uplugin file in Modules section, Type should be Runtime, not Editor.

Let me know if that helps.

Btw. UBlueprintEasingFunctions class can be based on UBlueprintFunctionLibrary.

Cheers,
M

Hmmmā€¦ that might actually be it. Due to not much documentation, I think I put that there thinking it meant something else. I am going to try this and let you knowā€¦ thanks for the update!!!

Also, quick question. You mentioned I could use UBlueprintFunctionLibrary as the base UClass. Should I inherit this anytime I have a custom object that has Blueprint nodes or does this only apply to classes that specifically only hold functions for BPs?

Oh my godā€¦ Kaziu, you were right! Thatā€™s exactly what it was this whole time. I cannot believe it as I really hope I didnā€™t waste yours and TJā€™s time on this matter. Like I said, I didnā€™t see much documentation and most of how I learned how to do plugins was simply jumping after looking at a couple examples inside the engine.

Now, does this explain the weirdness where depending on how I had stuff wired, I would have to re-add nodes or at least give you an idea? Its very clear since the Blueprint had a dependency to the plugin and that the plugin was only specified to run in the editor. Maybe, and I donā€™t understand if this would be easy, but if UE4 upon running letā€™s say in standalone mode, if it tried to run the Construction Script pass of a given BP and external dependencies didnā€™t exist, could the editor print a string to the screen that saysā€¦ ā€œMyBlueprint_C cannot initialize due to missing external dependency: EasingFunctions pluginā€?

That would be great but has all my code so if you need easy replication, itā€™s all there. Also, I told I was eventually going to do a pull request and submit the Easing Functions plugin to the Engine codebase. Since you have it, if you think it would be helpful to add to the engine, go right ahead :slight_smile:

One last thing either or Kaziu, I have a level that is very minimal however a planet in the distance is using I think a 8Kx4K texture but aside from that, everything else is only a couple actors in the scene. Every time I load it recently, Iā€™m seeing my RAM spike to 2GB and it takes about a minute + to show up. Is there anyway I can profile the memory/perf to get a better idea of what is going on?

I am going to go back through those Blueprints now and see if I messed anything up when rewiring stuff but I donā€™t think you can create memory leaks in BPs since it has itā€™s own GC, but I may be wrong.

Anyways, thanks again and let me know what you think on my other thoughts/question.

Take Care!

Side note: The RAM spike is only for the background level Iā€™m streaming in. It contains a planet that is to scale. The assets used probably equal somewhere around ~5Mb in size. My assumption is it has to do with my model rendered so incredibly big but if so, Iā€™m confused as to why the scale of a model rendered would do that. To put it into perspective, the planet in this case is Jupiter and the same exact size in cm units. Hope that helps and thanks!

Okay, so after some testing myself, it looks like I set the planet mesh to Dynamic instead of Static. Since the thing is so big, Iā€™m guessing it was from any sort of dynamic shadow maps. Not sure why I set it that way but since it is too big even for Lightmass, I just set it to static and disabled static shadows and now Iā€™m back down to a more reasonable 380Mb for the process :slight_smile:

So ignore that but if you could let me know what you think about my question having to do with UBlueprintFunctionLibrary and I thank you two again for your persistence with me on my previous issue.

Oh one last thing, if I had a planet-size model that I wanted to cast static shadows from, what is the size of a LightmassImportanceVolume that can work good enough or is there a way I could scale the planet down, build lighting, then scale it back up? If not, would it be possible to add to the engine a feature so that during lighting builds, the lightmass could use a vector parameter to say how much to scale down the object for lighting builds?

Thanks for the reply Kaziu! Been up pretty late over here in California working and everything is running great! Also, the planet I mentioned above, if I really want to keep it that large, is there an effective way to still have shadows cast from one planet to the next without incurring such a large cost in memory? Thanks again.

Hey

Documentation for plugins: Plugins in Unreal Engine | Unreal Engine 5.1 Documentation

UBlueprintFunctionLibrary should be used as base for class that is never instanced and holds only static (blueprintcallable) functions.

It is often very helpful to see log output. It can be found in "\Saved\Logs" or can be enabled with ā€œshowlogā€ command (in game, after ā€œ~ā€ is pressed) or -log commandline switch.

Cheers,
M