Gridify - a tool to turn a part into a grid

Welcome, developers!

Today I want to present to all of you Gridify - a free plugin/tool that can quickly turn any part into a grid. For example, you can turn a baseplate into a grid so you can make blocky terrain by just adjusting parts’ height instead of infinitly copy-pasting parts manually. Or you can turn any wall into somewhat destructuble without manually measuring each axis for pixel-perfect alignment. Or much, much more if you really need some grids

Showcases




Installing and enabling a plugin
  1. Install a plugin from Creator Marketplace
  2. Open Roblox Studio
  3. Go to file (top left corner) → AdvancedManage Plugins and enable Gridify
    It shouldn’t require any permissions, if it asks for some, do not allow (probably a fake plugin)
  4. You are now good to go! Just open any project or create a new one. You will find a new Cut a part button under a plugins tab

Plugin usage instructions:

  1. Select one part. This plugin only works with parts/bricks (not wedges, spheres, etc.)
  2. Press Cut a part button to open a plugin’s widget
  3. Change some settings to whatever it fits for you
  4. Press Gridify! button
  5. New parts will be created. These new parts will be selected automatically

This plugin supports Undo/Redo commands, so you can quickly revert changes if you dislike it

Available options:

  • Grid layout - amount of parts in each axis (or just a number of cuts + 1)
  • Padding - size of an empty space between “cells” in each axis, in studs
  • Copy descendants to new parts - if true, all descendants of an original part will remain in new parts
  • Copy properties to new parts - if true, clones all properties (except Size and Position/CFrame) of an original part (including attributes), otherwise new parts will look like a “default studio part”. Name and Parent properties are always applyed to new parts
  • Keep original part - if false, original part will be removed
  • Fill inner space - if false, inner parts wont be created. Strogly recomended to disable for huge grids
  • Weld neighboring parts - if true, creates WeldConstraint for all new parts to weld them with each other in a proper order

Possible improvements in the future (in case if somebody will actually use this plugin except myself)

  • Smarter result predict
  • Grid layout can also accept size of a “cell” in studs
    ∘ As of 0.0.4, in addition to that, I am also thinking of accepting parts as a “cell”, instead of cutting a big part into “cells”. Basically, a part cloning option to make a grid around it, not making a part to become a grid. And possibly it should also accept models/groups of parts
  • More cloning options
  • Complete scripting overhaul when plugin will be fully developed for better stability and faster operation times
  • Minor perfomance improvements
  • Possibly add support for spheres and wedges? I don’t really know how to properly implement those

If you downloaded a plugin and if you actually found a use for it, then my goal is completed! This is actually my very first time for me to upload anything to public. Thank you for participating in a… well… beta test, I guess?

If you found a bug or want to submit a new feature idea, feel free to reply to this topic, I don’t bite (usually). Or just your thoughts about this plugin

A little bit of backstory: originally, this plugin wasn’t intended to be uploaded for everyone. I made a plugin for myself to quickier build some stuff for my (hopefully) future game. When I finished this plugin, I thought of how fast I was making stuff where usually it would took way longer. My perfectionism also adds time. But a plugin was making perfect grids fast, perfectly fast
_
As you may guessed, this plugin made its way to the public. I only had to do like… 70% of extra work… Yeah, originally this plugin was very buggy and not user friendly. I haven’t even looked if other similar plugins existed, I was just excited to publish something for the first time

Current version: 0.0.6, last updated on June 16, 2023

Change logs
Version 0.0.6 - June 16, 2023
  • Added new Weld neighboring parts option
    ∘ This will help you to automate a process of welding parts with each other. Moreover, it creates a welding system where parts are welded with the closest ones, making it easy to make grids destructuble and non-anchored. Defaulted to false
Version 0.0.5 - June 15, 2023
  • Added new Fill inner space option
    ∘ It allows you to not create inner parts. It heavily decreases an amount of created parts when you have big numbers in Grid layout, thus increases perfomance when dealing with big grids. Defaulted to false

Version 0.0.5a

  • Changed some numbers regarding widget properties
    ∘ Changed min allowed height to match with the new option. Also, in default state, this widget will float instead of docking to the left side
  • Calculating expected amount of generated parts is now correct with Fill inner space option set to false
    ∘ It shouldn’t show warnings if you exceed safe limit when in reality you will generate way less parts

Version 0.0.5b

  • Fixed incorrect part cutting when Fill inner space option is set to false and GridLayout have at least one axis set to 1
Version 0.0.4 - June 13, 2023
  • Now this plugin is properly following part’s properties when modifying cutting parameters
    ∘ A CFrameChanged event is used to track part’s properties. This way, the result predict will be correct when resizing, moving or rotating a part in question. It is also optimized - this event is only connected when a plugin’s widget is open and a part is selected. When a part is deselected or widget is closed, event is disconnected
  • More “small script cleanup”
Version 0.0.3 - June 11, 2023
  • “Cutting parts” cannot be selected anymore
    ∘ Their Locked property is set to true
  • Small script cleanup

Version 0.0.3a

  • Renamed GridifyBoudingPart to GridifyCuttingPart
Version 0.0.2 - June 10, 2023
  • Now this plugin warns you if you are about to create more than 2000 parts
  • Proper number rounding
    ∘ It was possible to enter something like 0.4 and the plugin will round it down to 0, causing errors. In addition, entered fractional number into text boxes will be replaced by a rounded one
  • Small perfomance improvement
    ∘ When a plugin’s widget is closed, an event that listens for selected parts is disconnected until plugin’s widget is open again
14 Likes

Please add a disclaimer for performance, like this is very bad for performance, but this is a good idea for some stuff like a Rubik’s Cube for example, but I mean optimization is important, and there are mobile and low end PC users

1 Like

Should have saw it comming, if you put too big numbers then it will freeze. Will add a warning if there are too many parts about to be added.

Nonetheless, thanks for an idea.

I am also planning to add an option to not add inner parts which will heavily reduce amount of generated parts

2 Likes

Okay, so I pushed a first update. The most important change is it should now warn users that they are abot to blow up their pc. From now on I will keep all changes in the change log in the end of the topic

Why not put it in the topic so people who didn’t use the plugin can know

1 Like

You mean telling that trying to create tens of thousands of parts will lag the pc right in the topic? It’s obvious, there is no workaround for this. And those who will try wil be warned about that in the output with the amount of parts they are about to create

3 Likes

For the time being, I will stop working on this plugin for about a week (gotta pass the exams first), in addition i want to work on something else. However i will still try to patch bugs if I find ones.

To sum up what I want to add in a near future:
Add a new option to weld newly generated parts together
Use part as a cell instead of cutting it to turn it into a grid
Use parts or models as a cell reference to make a grid