Studio feature request: Children/Part counter

Introduction:
On behalf of builders working on large projects and maps it would be great to be able to see the children or part count inside of each object/model as well as the overall part count.

Problem:
Why is knowing the part count useful?

Many parts = Lag.

It allows builder to know whether they are using too many parts or whether they could add more detail. You will always have players with lower end PCs meaning that it’s best to try and make maps as lag free as possible. I regularly check my part count with a plugin to make sure I am on track for having a part count suitable for the player. But during development and working on separate models you can’t tell whether the model you’re currently working on is too detailed or could have more detail. A workaround would be to cut and paste the model and see the overall part count change or copy and paste the model into a new file but these workarounds aren’t very efficient.

Solution:
Maybe a solution would be to have something similar to “Microsoft’s Word Counter” that is shown in the bottom left of the screen. It normally shows all of the words in the document and when selecting a paragraph it will show the fraction of words that is selected out of all the words together.

Example: Word Count: 20/100


ROBLOX version:

Part Count: 56/11,340


Having this in studio would make it a breeze for builders like me to find out how many parts are in each model and the parts I have overall.

If you find you have too many parts and the game is lagging you then have to cut down on detail. To do that you need to find models that could have less detail and don’t need many parts, there’s no easy way of doing this in large projects when you have 100’s of models. Having this feature would allow me to select a model and instantly see how many parts are inside of it. I would then be able to easily make the decision of whether to cut down on parts in that model or not.

14 Likes

I agree that having this feature would be useful.

1 Like

If you press Shift-F4, it brings up the diagnostics window that displays how many parts are in the game.

1 Like

Thanks, but if you didn’t read the first sentence already please do.

2 Likes

Ah, read it too fast. Well, that gives you the overall part count, so that’s half of it. :slight_smile:

Writing a plugin that does this would be extremely easy:
Have a TextLabel in a ScreenGui in CoreGui.
Update it on Selection.SelectionChanged

2 Likes

Yeah, I’ll agree with you here, @einsteinK. It’s easy enough to make in the form of a plugin, so I wouldn’t advise building it in. Let users download it if they want it. Not everyone cares about this datum.

All the high quality maps and builds on ROBLOX care (Which I’d hope is every game on ROBLOX that uses parts). I’d also rather not add another GUI onto my screen whilst working let alone having to open and close the plugin whenever it’s needed.

You act as if having to press one button to show/hide the GUI takes years.
Could always hide the gui when you don’t have a part/model/workspace selected anyway.

This isn’t something I’d want to work around when it should be commonplace for users to have this data shown at all times.

Surely the bigger task is actually making everyone that builds on ROBLOX aware that this plugin exists.

We shouldn’t act like making small but important improvements to studio is a massive task and should be avoided unless absolutely necessary.

Making a plugin for this feature would be the lesser option to having it built into Studio.

It’s easy enough to make Word Count a plugin. They still implemented it.

Digpoe has a point. Sure, less people are aware of plugins on Word but there are still people on ROBLOX that are unfamiliar with plugins too.

There is currently a sort of way to find how many items are in a model. Select the model in the explorer and right-click->Select All Children. The properties widget will update to say how many items are in the selection.

1 Like

Thank you, it’ll do for the moment :slight_smile:

local counter = 0
function countParts(place)
	for _, v in pairs(place) do
		if v:IsA("BasePart") then
			counter = counter + 1
		else
			countParts(v:GetChildren())
		end
	end
end
countParts(game.Selection:Get())
print("Total parts:", counter)

Dump that in command bar and run when you want to count what is in selected items

3 Likes

Here’s a plugin that I made that does this. It counts BaseParts, Terrain Voxels, and overall instance count in your game. It only counts and listens for changes if the plugin is activated, so it won’t hurt studio performance at all when off.

From the posts here though, it would be cool if I modified this so that it would show a separate count based on the current selection. Wouldn’t be hard to implement at all.

1 Like