Hi, I am new to Unreal and this asset is more complicated that I thought. The impression that it gives me is that it is only works out of box for the Third Person default controller of Unreal .
I am trying to make it work with Interaction Controller. Can you please give a clue of how integrate with IC? Thanks
The system is not limited to any particular controller, the Third Person is added merely for example purposes.
Do you need help with the general setup (root level, settings) or with the spawning of the character in particular?
For the latter, please have a look at this part specifically: Pawn Handling
PS: Is “Interaction Controller” the Character Interaction by ZzGERTzZ?
So what is the benefit of using this plugin over doing a method such as this? HTF do I? Loading Screens using Level Streaming in Unreal Engine 4 - YouTube
I’m trying without much luck to have my system work like this:
-
open game loads up an intro screen saying “life art studios presents” which lingers until level has loaded
-
presented with main menu where you can choose some settings, view news updates etc, you select from this menu to go into VR mode or First person mode
-
selecting one of the two goes to a loading screen that sets up VR or non VR mode
-
VR or Non VR mode is initialized and the default level is loaded in the background of a loading screen, when it loads fully it will spawn the player and then fade from black to visible
-
(game scenario 1 ) when I open from this main hub an interactive transition level appears, an arcade for both VR and NON VR, while the other level loads in the background. Waits for player input from either keyboard key or in level button actor to transition to the level that was loaded in the background
-
( game scenario 2 ) would like to have the same thing as above but loads up a world comp level
Hey Starkium,
The main benefit would be a much quicker and cleaner setup, you drop one Actor in the persistent level, set up some events if needed (via dispatchers already set up for you) and you’re good to go.
Player input requirement and Fade To Black screens are also covered.
There’s a large collection of examples included, showcasing even more advanced features, such as latent actions (for example you could have the loading screen wait until some of your own game logic concludes, such as procedural level generation for example).
Biggest benefit compared to the video you linked is also the build-in functionality to display the actual loading progress (as a percentage, progress bars, etc). Requires a small code plugin (provided by me), as this engine functionality is not exposed to Blueprint.
On top of that, if at any step you run into problems or have questions, I’m also very hands-on with support.
Everything you listed would be doable, with the exception of the very last point.
World Composition is coming in the next update I’m working on right now (that feature requires some additional code plugin functions, i.e. it would not be possible with Blueprint alone).
Thanks! I do c++ as well, could you walk me through a simple example of that?
The system only relies on a code library plugin for some specific features such as loading progress readout and World Composition streaming state monitoring.
The asset itself is Blueprint and can work without the plugin (minus the above-mentioned features).
I have a really weird issue. Whenever I open a new level using “Open Level” I can no longer possess any pawns in the new level. For example, if I launch my 2nd level in Standalone, it runs fine, I can generate and possess my player pawn. If I open Level 1, and then click a button to “Open Level” level 2, no matter what I do I cannot possess any pawns and it gets stuck in uncontrollable spectator.
Can you describe or show how you handle possession in that level?
I’ve tried basically every way.
Creating pawn in game mode.
Creating actor that spawns character and posses.
Spawning and possessing character from player controller.
They all work fine when I launch the level as standalone. The second I try to open the exact same level with “open level” none of them work anymore, it just gets stuck in a non-controllable spectator at 0,0,0.
My game has a Character Select level which saves a bunch of information in Game Instance, then I try to load into my actual game and construct the character with this information.
If I understand correctly, level 1 would be the “Select level” which saves the information and level 2 is the “actual game” which reads that information.
Have you debugged if the saved information is what you expect it to be when you execute your possession?
This would be the most likely culprit that could alter the behavior between a game immediately opened with that level (where you most likely use default values) and one where that level is accessed via “OpenLevel” (in which case the values might be invalid).
Otherwise, what is the setup of level 2 - does it have the LSS Actor, a persistent level, loading screen scene and sublevel(s)?
At which point is the pawn spawned/possessed (e.g. on a particular event of the LSS, such as OnAfterLevelShown, or in BeginPlay of the sublevel)?
I debugged the information by simply setting fake character information directly into the game instance. It doesn’t change what happens. Opening level 2 as standalone takes the fake game instance info and translates it properly into the character creation.
Level 2 has an LSS actor, the loading level, and then one actual level. The loading screen works perfectly, but once it finishes the game is stuck inside a 0,0,0 uncontrollable spectator. I have tried spawning the pawn at every point of the LSS process. Before loading the level by removing gravity so it doesn’t fall before level is loaded. After level loaded is the same thing.
I’d be more interested in what information is being retrieved when it is **not **working (use breakpoints or PrintString to debug).
Or, how your game behaves when you feed it the “fake” information when going through OpenLevel.
To help with debugging, I would need to see more specifics in order to determine where the issue may lie.
Can you send me either a simplified setup or detailed screenshots of your blueprints via email?
Ideally, try to reproduce the issue in a new template project with as little dependencies as possible.
Well I figured it out, I had some debug code from another issue that was still being executed and messed with the GI variables. Sorry for wasting your time, wasn’t even related to LSS.
Just integrated the code plugin for 4.22 and got this warning when compiling:
1>C:\UnrealEngine\Prizefighter\Plugins\LoadingScreenSystemPlugin\Source\LoadingScreenSystemPlugin\LoadingScreenSystemPlugin.Build.cs : warning : Referenced directory 'C:\UnrealEngine\UnrealEngine\Engine\Source\LoadingScreenSystemPlugin\Public' does not exist.
Not sure it’s a huge issue, but thought it worth calling out.
No problem, glad it turned out ok.
Thank you, I’ll look into that.
4.23 caught me on vacation. I won’t be able to properly update until the 16th.
Though I’m fairly confident that the system will work in 4.23 projects just fine as is.
Hello, Will World Composition support be available soon? Thanks
I will be releasing V2 with multiplayer and world composition support in October.
Does this system work ok with Baked Lightmaps & Volumetric lightmaps? Please let me know, looks great. Thank you!