How would I create these rocks faster?

So, for the majority of the maps in my game, I’ll have rocks blocking off out-of-bounds areas. It’s basically a standard in Roblox games to do that. However, I found that doing this process takes ages, and it’s hard not to make it look duplicated.

This is kinda what I mean:

I tried using brushtool, but it didn’t look right, and the brush selector thing would also hover over the existing rocks, forcing it to go up. Any ideas?

2 Likes

There’s no easy way to create a bunch of good looking rocks in seconds, that i know of

1 Like

I usually create an algorithm that randomly positions and scales parts in certain areas, instantly generating all the necessary parts. This can be a bit difficult for people that don’t script, but the basic algorithm is like this:

Define the x and z boundaries where the rocks would generate (I usually reference a part, taking the x position - x size / 2, and the z position - z size / 2)

Define the maximum and minimum sizes of the rocks

Define the number of rocks to generate

Create a loop that runs for the number of rocks you want to generate, with the following steps inside it

Generate a random number for each of; x size, z size, x position, and z position, based off the values defined above

Create a number for the y position by taking the position you want the bottom of the rock to be at + the y size / 2

Instantiate a part, set the color and material, and set the position and size to what was defined above

I hope this helps!

1 Like

Weellll… I didn’t want any scripting support. I wanted to know if there was a plugin to do this or something. Thanks for the help, though.

1 Like

I would say put the Parts in a Folder and have them at the same length on the Y Axis, and Do this Script (Even tho its not Scripting)

for _,i in pairs(script.Parent:GetChildren()) do
	
	if i:IsA("Part") then
		i.Size = Vector3.new(i.Size.X,math.random(20, 27), i.Size.Z)
	end
	
end

Although it doesnt help with Placing Rocks, its still helpful for Sizing

As a Tip, you can grab multiple Parts by holding SHIFT and clicking on Parts

1 Like

That method gives a nice final product but can take a while. IF you want to put in all that effort, I would suggest learning Blender and making rocks there, as you can easily do that, make them have a little more detail and precision, and can learn it for later projects and could continue on with Blender in high school. This would probably take more time for right now, but you can also start making your own really cool trees in Blender and other models.

If you decide to go through with it, after your model is done, export it as a .fbx. Don’t worry about textures, you can do that in Studio. Upload the model to Roblox after selecting “Invert Negative Faces” and setting the size of your model. Then go into the group, select all the parts and set the RenderFidelity to Performance do reduce lag (it looks the same no matter what you set it to, so don’t worry about your model looking worse than you wanted it to). Finally, treat it as a normal Roblox Part and texture, position, and do whatever else you want with it!

Here are a few things I have made in my time working with Blender, going from the start of me using it to now:

I only made the hand, rig, and animation for this one ^^^

1 Like
-- define a starting position, physical or in code as a cframe.

local startingPosition = workspace.startpos
local rockFolder = Instance.new("Folder", workspace)
rockFolder.Name = "rocks"

local spaceBetweenRocks = 10 -- studs
local minSize = 10 -- studs
local maxSize = 20 -- studs

for i = 1,20 do -- how many rocks do you want?
    local rock = Instance.new("Part", rockFolder)
    rock.CFrame = startingPosition.CFrame*CFrame.new(0,0,-spaceBetweenRocks*(i-1))
    -- alter the rotation of the starting part if you want the rocks to go in a different direction.
    rock.Size = Vector3.new(math.random(minSize,maxSize),math.random(minSize,maxSize),math.random(minSize,maxSize))
    rock.Material = "Slate"
    rock.Anchored = true
end


is this what you are trying to do?

1 Like

Yes, that’s actually exactly what I wanted, I’ll see if I can make do with that.

@imperial_deathtroop, I get what you mean, and I’ve made a couple of rocks in blender before, but I think the big part rocks fit my game more.

Okay, I made a plugin based off of what @MLGwarfare04 posted, and it works amazingly! It has all the basic features, a couple of buttons, undo and redo, and setting saving.

This is it: RockCreator.rbxmx (35.9 KB)
Hope this makes building a bit easier! All credit goes to MLG for the original idea, though.

This is what it looks like, if anyone is curious:

1 Like

Totally understand, everybody wants a different style to their game.

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.