Just though I’d add a little bit of extra context from my personal experience in this sphere. Do let me know if I’ve made any mistakes, though.
Note that Performance can grant poor results for some meshes, Automatic is distance-based (and the default option), so far away meshes that don’t look accurate enough to be visually pleasing should still be set to Precise RenderFidelity.
Note also that this removes most of the benefits of StreamingEnabled for any model you enable it on. Plus Persistent models aren’t necessarily guarenteed to solve your scripting problems either since they aren’t guarenteed to have loaded until PersistentLoaded has been fired. Ideally, you should code around StreamingEnabled being enabled.
As a little correction here, CollisionFidelity doesn’t change the rendering afaik (except for shadows sometimes) but rather just opts for setting the collision box to a box, this makes it unsuitable for any parts which you use the Touched event (or other collision methods/events) on. It is, however, good for decreasing memory.
As far as I know from what I’ve heard, Roblox converts files to ogg before serving it to users. Maybe there is a mobile bottleneck for mp3 uploaded files, but if so, I personally haven’t heard of it? For any looping tracks, you should upload ogg files, though, since mp3 has an inherent piece of silence at the end of each track.
Do you have benchmarks for this. This feels like it should be the other way around?
For added context on why, task.wait
has a shorter minimum waiting time and doesn’t throttle. Those are the main benefits for it afaik. When not using the number parameter, you are probably better off using RunService events, though.
Keep in mind that the reason this works is because it isn’t being streamed to the client. Only items you don’t need to use the client should be stored there.
From my understanding of buffers, you probably don’t need to use them unless you are working with your own binary-like format. Most scripts won’t need to use it.
Only enable this if you see a worthy performance benefit. There are some drawbacks to native code:
-
Code compilation time is required which can increase the startup time of servers.
-
Extra memory is occupied to store natively compiled code.
-
There’s a limit on the total allowed amount of natively compiled code in an experience.
Source
It is also only currently supported on the server.