An Efficient Way to Make a Hide Details Setting

I am not sure if this thread should be posted here or in Building Support, please let me know if this is not the correct category.

What I’m Trying To Do
I’ve noticed that having a lot of parts in the camera’s view during game play can significantly lower FPS, especially on mobile. I want to create a setting for my game where players can set if they would like to see extra details or not (mainly all the “decorative” parts and unnecessary particle effects).

Problem
I do not know what the most efficient way of doing this. I have an idea, but I just think that it may not be very efficient.

My Current Way
To put every detail (part, particle effect, etc.) in a Folder in Workpspace and when the player disables details, the entire Folder is moved to ReplicatedStorage (somewhere other than Workspace).

I personally think that this way might not be very efficient (especially if I forget to put a detail in the Detail folder). So are there more efficient ways of achieving this?

1 Like

An alternative to “putting everything in a folder” is using CollectionService to tag everything that’s a “detail”, and then using CollectionService:GetTagged() to get a table containing all “details”. There are some pretty nice plugins that allow you to add tags to anything you have selected, or rename tags, or select everything that has a specific tag.

5 Likes