How to Make Lighthouse Walls -- or Any Smooth Hollow Cone Shape -- Out of Parts

Welcome builders! This tutorial is pretty specific, but it was requested, so today I will show how I created the walls of this lighthouse I’m working on.

STEP 1:
In Studio, insert a Part and a Cylinder. For this example, I am using a small base. Make the cylinder into a 1x30x30 stud disk, like this

STEP 2:
Next we will want to place a 1x2x15 stud Part on the edge of the disk, and make sure it is centered. Duplicate the Part and move it across to the other side of the disk. It should look like this

In the Model Tab, we’re going to change the Rotate Snapping to 5 degrees, and Move Snapping to 0.125 studs.

Now rotate both of the Parts inward to the disk, each by 5 degrees. Afterwards, push both the Parts in by 0.875 studs. When you’re done, it should look like this

Now position yourself to face the top of the model. In the Model tab, we will want to change our Rotate Snapping to 11.25 degrees

Select the two Parts, then select the Cylinder. Duplicate them, and rotate them one click (11.25 degrees) horizontally. If done correctly your model should look like this

Rinse and repeat this process until you have completed the shape. Be sure to delete all the Cylinder duplicates – we only needed them to center and level the duplication process of the Parts.

By this point, if you look along the walls, you will quickly notice all of the jagged edges. Don’t worry, your lighthouse will not look this way; we will take care of these jagged edges now.

Back to the top of the model, select a Part, duplicate it, and move it 1 stud to the outside, like this

Rinse and repeat this process until you have one chunky circle

Now select all of the outside parts. In the Model Tab, we’re going to focus our attention to the Solid Modeling tab. Select that, and with all the outside parts selected, click on Union.

After when the outside walls are unioned, immediately go back to the Solid Modeling tab and select Negate. Your model should now look like this

Next we’re going to select all of the inside walls. Head on back over to the Solid Modeling tab, and union these walls. Do not negate them. Afterwards, you should see a NegativePart and a Union in your Workspace. Select them both
image

With both of the objects selected, head back to the Solid Modeling tab for the final time and union these bad boys together. Your end result, should be a beautiful, smooth, lighthouse-like shape

Hope this tutorial helps! If there’s any further questions please ask away in the comments. Thank you :slight_smile:

11 Likes

Or you could just use Blender. That’d be better for your sanity, since you can just cut shapes, extrude, whatever. It’s gonna be better for the performance of your game too.

4 Likes

While this is correct, it’s important to note that traditional building styles don’t call for the use of MeshParts, or any custom ID’s for SpecialMeshes

5 Likes

Yes, but that’s bad practice. Just because it’s traditional doesn’t mean it’s good.
I’ve tried making a game with traditional building styles, and it was a terrible experience.

2 Likes

That’s funny, I always had better experience with optimisation when making showcases that are Part-based than Mesh-Based. If you would like some examples, I reckon you check out my part-based showcase, The Encore, and compare performance to my mesh-based showcase, State of The Art.

Using Parts is not a bad practice. While a model using Parts may have a higher tri count than a MeshPart, Parts are localised within Studio and load significantly faster on slower bandwidth internet, whereas MeshParts have to have their ID URL pulled from online and have take more time to load. Even more if that mesh has a Texture to load as well. Unions also have their own ID’s to pull, but so long as your build isn’t nothing but Unions, then people with slower internet can access your project much easier than if you were to use MeshParts. It’s really about choosing your demons and going with what you can utilise best to your advantage, as well as deciding on what crowd you want to cater to

3 Likes

Good point, but the same goes for CPU usage. If you want people to lag, you can use parts. Yes, it’ll take a while to load everything if you don’t optimize your meshes well. And loading isn’t usually a big issue anyway, just don’t block the user from playing while you load.

i remember as a kid playing Roblox on my IBM Thinkpad T20 that was rocking Windows XP. I would lag on showcases but not regular games. Parts don’t always perform as well as meshes but they’re nowhere near as unoptimised as you may think! My most recent showcase is Part-based and despite also being compiled with multiple particle effects, and utilising Future lighting, it still runs very smoothly!

1 Like

MeshParts are not as good as they could be, because Roblox bad, yes. But also, Windows XP has been discontinued 10 years ago. And old roblox games were also much more basic, so of course they would lag less.


MeshParts are nowhere near as unoptimized as you think. In fact, they’re actually more optimized than parts, as you agree:

That’s the definition of unoptimized. More tris means more CPU and GPU time taken.


What exactly do you ‎mean with compiled? You can’t compile anything in Roblox Studio.

Amazing tutorial!
Now I will no longer fear making a lighthouse. Thank you for your contribution :pleading_face:

1 Like

Excellent tutorial!

Might I add that something like Archimedes might be good for this build style as well!

2 Likes

While Blender is undoubtedly better for modeling most things and anything organically shaped, this post is obviously for those interested in recreating the shape without external software, replying with “just use x instead” seems somewhat short-sighted and to an extent unrelated.
If this was in #help-and-feedback:building-support and OP was asking for help to recreate the shape, this would be a somewhat more related & fair recommendation (not necessarily the most helpful though)
Additionally, meshes aren’t always necessarily ‘better’ performing than parts, context greatly matters. For the shape seen above the difference would not be noticeable, unless the object is reused very often, something often reused should be prioritized in optimization and thus better off as a cleaned-up Mesh.
+ 'bad practice' and 'worse practice' are very different.

As for OP,

Is there any particular reason you unioned the selected parts instead of going straight to negation? Is this better practice for more seamless results? Or just something to make the steps clearer?
(Genuinely curious)

Helpful tutorial, thanks!

2 Likes

i appreciate ur input! :smile: to answer ur question, i needed to do this in order for PreciseConvexDecomposition to work properly. negating a bunch of parts and unioning them with a bunch of other parts, and enabling PreciseConvexDecomposition makes the hitbox of the union very wonky and not very precise. I had to sit down with a friend for a moment to actually figure out a workaround

1 Like

If you are okay with using plugins you could also use the archimedes plugin since its much easier. These steps still work with archimedes except for when you make the circle you can use the plugin to decide exactly how many parts you want.

2 Likes

using blender to make concave meshes is an absolute nightmare for collisions unless you break the mesh up to minimize invisible walls, but in this case you might as well just use primitives like op showed above.

2 Likes