Scripted camera sequence not loading environments with StreamingEnabled

Hello developers!

I’m experiencing some issues creating a cinematic-like camera system for the background of my main menu. The camera currently loops through a list of locations to start panning from and to. Some of these areas do have some distance from each other, which wouldn’t normally be an issue but my experience has content streaming. More specifically, it uses opportunistic stream out behavior which causes areas outside of the target radius to not be loaded.

Since the cinematic camera system works on unique scripted behavior, it does not rely on teleporting the player’s character; and because the default replicationfocus is the character, nothing around the camera is ever loaded. I’m not exactly sure what’s the most efficient way to proceed with fixing this.

  • ReplicationFocus itself cannot be changed on the client and the client’s camera information does not replicate to the server so I’m at a loss there.
  • RequestStreamAroundAsync() behavior is simply not meant to be a reliable method, as stated in both the documentation and testing.
  • While I can technically have the client ask the server to create a part for replicationfocus, this is a little inefficient and I’m leaning for a different method.
  • I could also technically have the server managing the locomotion on its end but it’s preferable that the client does it as multiple effects and the music BPM is synced to the locomotion.

Thank you in advance!

Based on what you have said so far, there are barely any options left that we can work with. However, I am able to come up with a few possible solutions.

Solution 1
Assuming your spawn is a box, simply create multiple boxes that are placed near every scene and pivot the character’s model to their respective spawn box.

Solution 2
Have every scene be placed around the character’s spawn area.

Solution 3
Create a new start place with StreamingEnabled disabled. That way, all of your scenes can load just fine and you are then able to transport the player to the main game.

1 Like

Thanks for the reply!
I’ll most likely be implementing solution 1, not sure why I didn’t think of that.

The only issue I could see with this is that the entire area from point A to point B won’t be loaded depending on the distance, but I could just incrementally change the position of the anchored character after every second or so along the path while remaining slightly out of bounds.

I’m also concerned that the performance dip when loading new areas in the main menu might negatively impact the experience on older hardware. I might just have to switch to a camera system that remains in the same area (as suggested in solution 2) or is static if something like this is observed in playtesting, but that’s its own separate issue.

Regardless, thank you for your solutions!

1 Like

No problem! I’m glad my response helped you :slight_smile:

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.