Can someone give me some tips of Performance when building?

Hello developers!

I’m currently working on a city map right now, and I was wondering how can I reduce lag and optimize my builds.


I’ve been reading on the Devforum about how can I optimize buildings and I got confused by a lot. Some people say that Unions are good for optimizing, Some other people says that Unions are not good for optimizing, Use meshes instead, etc.

I’ve got confused so that’s why I want to ask if you can give me some tips to avoid lag, and optimize buildings.

Any help is appreciated!

3 Likes

All that you really need to do is make sure that the lighting and graphics aren’t too strong, and that you use a reasonable amount of parts.

Delete unneeded parts. Basically all I can recommend.

Be careful with textures, and be smart with optimizing.

  • Textures can use up a lot of your memory especially when used in excess.
  • Try to space out your builds, if you clump everything together, it’s just going to cause more things to be rendered at once.
  • A great way to optimize is to take things in the distance and turn them into low detailed builds or even decals. This is also great for places that are out of reach for a player, there doesn’t have to be intense detail for something they won’t be able to see often.
  • Meshparts over Unions. Don’t just convert them either, you should either just use blender or just import Unions to Blender and optimize them there. CSG is kind of inefficient when it comes to unions and it creates unnecessary triangles that can be wiped out in Blender if you know what you’re doing. Seriously, some of my unions have 10k tris and get reduced to 4.3k in some clicks of some buttons.
Common patterns of bad unions

image
2-4 tris in one face? Really?

image
For the record, this is a cylinder. Not only does it have more tris than it should, but it has a weird dip on one side.

image
How do I even describe this?


Negating a part turns out to create some tris after. Huh.

image
Phantom tris, my worst nightmare.

  • When using post processing like blur and stuff, please, be careful. That stuff for some reason tanks a GPU.
  • If you want a playerbase with low ended users, please, for the love of whatever you believe in, don’t use future. Especially for big games. Resort to Voxel or Shadowmap.
  • Parts that aren’t transparency 0 or 1 are more extensive. Do what you want with this info.
  • Do not overuse particles. Seriously, I can’t express how important that is. Particles are nice, but it isn’t if you run at 3 frames a second.
  • Back to the meshpart thing, use automatic or performant. It works.

That’s all I know on the building side.
This is a little more offtopic for a chunk system, but I find that scripting a way to unload chunks for people tends to be more harsh on the client than when you do it without, so it is really crucial to make sure you do what you can.

One last thing, make sure you don’t do this:
image

Do this:
image

Trust me, making sure that you don’t have extra faces lying around with parts that could easily be turned into one large part is a great thing. I understand the use of templates for maps, but once you use them, please, just go back and turn them into one part.

Hope I helped!

14 Likes

(post marked for deletion for privacy reasons)

5 Likes

Additionally to what everyone else posted, you should look up on how to use StreamingEnabled if your map turns out to be big, helps a lot with performance!

1 Like

Thanks for the tips! I’m gonna test it out on my game! :smiley:

1 Like

Wow! Thanks for the whole information, i’ll do these stuff to optimize my game as well! That’s a nice explanation and helpful information! Thanks :smiley:

1 Like

Thank you! I’ll look it up and see if it helps me!

1 Like

Sorta late to this topic, but if you ever get into using MeshParts (which is a great idea for helping performance), I recently created a tutorial topic on it.


Decals do increase lag, especially if not used correctly. (Like putting decals on a transparent part)

Also having tons of decals, especially uncompressed ones, will cause longer loading times when joining games, especially for those with bad internet connections or low end devices.

Use an image compressor when using tons of decals. Roblox will slightly increase the file size of any decals uploaded, but with image compressor you can get ahead of it and reduce as much size as possible. This way, when someone with a low end device or bad internet joins your game, it won’t take as long downloading the decals.

1 Like

For creations within Studio, I have a handy community tutorial on a few neat tricks

1 Like

Thanks! I’ll check it out
(30char)

Thank you! I’ll check it out
(30char)