Streaming Enabled is not streaming out

Streaming Enabled is not streaming out objects.
This behavior is random, for example one time when I join the game it might work just perfectly fine, the other time it just stacks objects until crash. It is very unstable behavior and I can’t find a fix.

Edit: I forgot to include that this has been going on for over a year. I haven’t noticed if it started after any specific Roblox update. However I’ve tried many different streaming settings and coded my own systems to request area streaming in certain cases. Currently lowered the streaming target radius number to as low as possible with no luck - it still ends up filling up memory sooner or later if objects are not streaming out. It is pure RNG at this point and its hard to tell if streaming will work properly or not upon joining game.

And also the way streaming enabled works is completely broken - objects 800 studs further away are not streamed out and objects that are close to player are not streamed in making it look weird, the end result is a big empty field with detailed buildings in distant which makes no sense. And I checked my models streaming settings, etc. everything is properly set.

1 Like

What settings do you have toggled with streaming enabled? can you take a picture of the properties menu with workspace selected?

StreamingSettings
These are the current I’m using. I’ve tried setting min and target radius to different values, but that causes even worse instability issues.

Also I don’t know whether these other settings could somehow impact streaming negatively:
Setting

Also I have absolutely no clue how streaming enabled works other than that it sends requests of mini-areas around players to be streamed in. Could in game parts count impact it negatively and cause instability? Currently I have 1.2m instances in game and it’s already optimized as much as I could.

set your streaming min rad to 1024 and your max to 2048 then set your streamoutbehaviour to opp something

low memory will try to fill up your memory as much as it can then start unloading stuff to load more when it’s full

Such high settings causes low end devices, specifically phones to crash.

You can of course reduce the distance if you want, Anything within 1024studs will be always loaded, Anything from 1024-2048 will be loaded yes but won’t try to prioritize the loading, anything beyond 2048 will not be loaded at all.

I do know how that works. The issue is that this feature always causes stability issues and does not unload objects that are beyond 1024 studs distance.

Try these settings,
StreamingMinRadius: 512

StreamingTargetRadius: 1024

StreamOutBehavior: Opportunistic

I’ve tried many settings, including those too.

Take a look at how streaming enabled rendering looks like in game:


It is definitely not normal behavior, it streamed out objects that are closer to player, but left those that are further away. I’ve double checked those models in the distance doesn’t have “Persistent” setting to be preventing them from streaming out.

And here is an example of expected behavior:


This is how it looks like after walking a bit closer towards direction where buildings were missing. They were streamed in late, much later than those objects that are further away.

So It’s working as intended, review these two docs it’ll explain the per-model rendering.

ModelStreamingMode | Documentation - Roblox Creator Hub
ModelLevelOfDetail | Documentation - Roblox Creator Hub

This is definitely not intended behavior. The links you’ve provided are unrelated to the issue. The problem in this image is that the models further away are streamed in before those that are closer to player character. It is supposed to be opposite.

Check your models, make sure you don’t have a single model for a large structure, for ex if you have a large park rather than grouping everything put it in a folder then group the individual things such as trees or smaller buildings. For large buildings you want viewable from a large distance you can set the LOD to StreamingMesh and when its “Out of view” it’ll generate a low quality version of the building.

Here’s full documentation on streaming that explains everything in more details
Instance Streaming | Documentation - Roblox Creator Hub

I have read the Instance Streaming documentation before. It doesn’t explain reasons why would objects would not stream out, especially when device is on low memory.

Update:

I’ve found many parts and meshparts in my game that were of 1200x, 2y, 1600z studs size on average. Mostly those were roads parts and meshparts of several roads connected together resulting in an enormous size part.

What I did now was replace all meshparts with regular parts of smaller size and reduced any other huge or long parts to sizes that are 300-400 studs long and this has improved streaming performance tremendously.

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