Generating mountains in Blender

In this tutorial, I will be showing you how to create cool and useful mountains as a cool background for your own game. To do this, it is preferred to have a little bit of knowledge about Blender and Roblox Studio. But I tried my best to explain this for everyone.

Benefits:

  • This could be used to make mountains, craters, etc.
  • Better looking environment (background).
  • Better performance than most other methods for this + has less than 10k triangles and only consists of one mesh.

Examples:

Step 1:

Make sure to install Blender v2.80 or above. In this tutorial, I will be using 2.80 since I’m not quite not sure how the newer versions look, but I doubt they are different.

Step 2:

Open up Blender, or to be more specific [blender.exe] which should be in the folder that is installed. The program should look something like the image below.

Step 3:

Start by pressing the [del] button on your keyboard (delete button), which should delete the block in the center since we won’t be using it in this tutorial. You can also delete the block by right-clicking → delete.

image

Step 4:

Point your mouse to the top left of the program and click [Edit] and then [Preferences], which should make a menu pop-up.

image

Step 5:

Click on [Add-ons] and then proceed to the top where it says [Community] and click it. Then at the top right side of the menu, you will be able to search: Landscape. Only one add-on comes up which is when you click on the empty square to enable it.

Step 6:

You can now exit the [Preference] menu.

Step 7:

Proceed to click on the [Add] button on the top right side of Blender. Then click [Mesh], and lastly click [Landscape].

Step 8:

A mountain should’ve now appeared after doing the previous step. You can now click on the button in the bottom left that says [Another Noise Tool - Landscape].

Step 9:

A menu of changeable properties will now appear to the left and changing the values will change the appearance of the mountain.

Step 10:

Before we start changing the properties we need to make sure the triangle count is below 10k, which is Roblox’s limit when it comes to importing meshes. To prevent it from getting over 10k I change the marked Subdivisions values to 70 each.

image

Step 11:

After changing some random properties I look for and change the properties until there is usually a lower-middle section since that is usually the part that has to be lower than anything else.

Step 12:

I like to make sure the mountain is smooth. So all you have to do is click on the mountain, then right-click and then lastly click the [Shade Smooth] button.

Step 13:

To export it into Roblox you have to click [File] in the top right, then go down to where it says [Export] and hover over it and click Wavefront (.obj)

Step 14:

I like to store meshes on my desktop until It successfully exports into Roblox. So I click [Desktop] on the left side. I then proceed to the untitled.obj where I change the name to anything Roblox-friendly, like Mountain. Then I look to the right where I click [Export OBj].

Step 15:

Open up a place in Roblox Studio and insert a MeshPart. Which should be quite easily done. As shown below.

Step 16:

Make sure that your [Properties] tab is open in Roblox Studio. If not I’d follow the steps in the image below. This means click view in the top left, then properties, select the [Mesh Part] and click the folder image next to MeshId.

Step 17:

Find the .obj file or [Mountain.obj] file that you have created, and click open in the bottom right after selecting the file.

image

Step 18:

The pop-up does not matter since we will be changing the size of the mountain, but I click no.

image

Step 19:

Anchor the mountain part and disable CanCollide.

Step 20:

I change the size of the part to match how it looked like in Blender and I move the mountain to fit a playable-area. [If the mountains have to be bigger than a normal max part size, then use a SpeicalMesh with the Mountain ID to be able to scale the mountains by a lot].

Step 21:

After adding some fog and changing settings in lighting and changing the color of the mountain part to green. I get this beautiful environment in the game because of the mountains.

:trophy: That was it, I hope you understood!

109 Likes

Thanks so much for sharing this resource, 28Y8.

This will be very useful for many. I currently make wedged terrains using blender but I think using the landscaping mesh from blender will add more depth into my terrain.

At the end of the day, this is wonderful for you to share! Thanks a bunch!

HttpFizz.

3 Likes

Very cool! I will use exactly this! Thank you!

1 Like

Thank you so much for this tutorial! I will definitely be using this in the near future.

1 Like

I have tried for 10 minutes, and I can’t get the middle to be lower than the outside. Is there any specific properties I need to change for that?

Nvm solved it.

I had the default seed, and then offseted it till the lower part was in the middle, then I changed the size to make it bigger.

Basically I just changed the size and offset and some other stuff like Noise Size.

1 Like

Wow this a really informative tutorial and I like all the pictures you added and how easy it is to follow along.

1 Like

EDIT: I see that you solved it :+1:

I manually change the properties of [Offset X, Offset Y] until the mountains are taller on the edges of the origin. I also change the seed sometimes to achieve this. There might be a better way though, I just have not figured it out yet.

I could potentially create and upload some greatly generated mountain meshes in a model for everyone to use.

image


I also want to add,

If you want the mesh to be bigger than 2048x2048, you should add a part and then insert a special mesh.

In it you change the meshtype to a file mesh and put in the mesh id as the same.

Only difference is that you can change the scale to however much you want. That means that it can be waaay bigger than 2040x2048

(This baseplate is 512x512):
image

4 Likes

I have stated that in the tutorial already, but thanks for explaining it better and more in depth :+1:

2 Likes

Oh, I didn’t notice :joy:

No problem.

1 Like

Thanks for the resource,
but I’m sure there was also another way from a third party software known as world creator 2.
at this moment it only supports the high end game engines.
Anyway, really helpful and might even use it in the future.

1 Like

is low poly terrain made with this method good to use performance wise?

1 Like

I tested it out and compared both “Generated Mountains” (This method) and “Triangle Terrain” with 144 Triangles (Wedge Parts). This method managed to perform on average just a tiny bit better than the part method.

I’d say that the performance you get using this method is quite good.

Wedge parts:

image

Generated mountain:

image

The only issue with this is that the generated mountains are not supposed to be interacted with. They are used to create mountains in the background with little to no effort compared to wedge-parts.

Why cant it be interacted with? If i make the subdivisions pretty low it looks like it would work

nvm i think the collisions r still messed up

2 Likes

Yeah, that’s why I said that they are not supposed to be interacted with. Hopefully, Roblox adds better Approximate Convex Decomposition in the future. :pray:

For now, it is possible to divide the mountains into different pieces, but it would probably take lots of time or just use wedges.

Thank you so much!

This was so helpful to me and I will be using this in the near future! :smile:

1 Like

The new one they added in beta is actually working pretty OK with my complex mountain, i think it’ll work for simple low poly terrain. I’ll test it out today and report back.

1 Like

Looks like our wishes have been granted:

5 Likes

You did this tutorial better than any youtuber could, that’s for sure. This is awesome! I knew how to do this in the past, and yet I forgot. Good to know :slight_smile:

1 Like