I have a map with 130,000 parts at this moment, but we are able to reduce it to 100,000 very easily. The rest is probably extremely tedious work that’ll take a while to get through.
We’re not even 25% done with the total map and being at 100,000 parts already puts us at a severe handicap. We could go all the way up and even surpass 200,000 parts if our new unioning skills don’t match expectations, or if the map is too big to even union.
My question is, where should we go from here? Do we script a chunk making system, enable Part Streaming, or keep optimizing? I have little to no experience in this so apologies for my novice self. Let me know if you need more information.
StreamingEnabled is pretty buggy, I don’t recommend it. Eventually you will hit a limit with optimizing. Chunk loading is possible but it probably won’t help much, since you will still need to render collisions incase of lag. The best method I’ve seen is to make multiple places connecting your world together, as annoying as it sounds its the best you can do with the poorly optimized engine.
Ah yea, I forgot about the place connection method. Doesn’t sound too bad. I think, in the long run, it’s just necessary to have separate places with teleportation at the moment for expansion. Thank you for the speedy reply and I hope soon the engine gets better.
Expanding on KDude, there is a REALLY BIG misconception about custom streaming. A lot of people think a custom chunk system will fix their problems right out of the box. It won’t.
To add onto this as well, Union-based CSG in Roblox has a habit of creating uniform shapes with a much greater amount of triangles than needed. More triangles == more to render. What we did in several games was union our object we wanted unioned, then export them to a 3D modelling application to refactor and reduce their topology into something slightly more sane. Then, we would reupload them as meshes. We were able to sometimes reduce triangle counts by factors of 25 for some unioned meshes.