How to use script to cover everything in snow

but how do i do it then? manual work is tooo tiring :frowning: other games like paintball also have those

also, there’s a problem with rotated objects:

Copy the orientation of the part. Just think.

um the orientation is the same but the position isn’t

how do i move a part on it’s orientation?

Clone it on the position but one stud higher while keeping its orientation. Just think bruh.

yea ik ill fix it
wait a while

OH WAIT i found a way lol

for i,v in pairs(game.Workspace:GetChildren()) do
	if v:IsA("Part") and v.Name ~= "Baseplate" then
		local snow = v:Clone()
		snow.Parent = v
		snow.Size = snow.Size-Vector3.new(0,snow.Size.Y-0.1,0)
		snow.Anchored = true
		snow.BrickColor = BrickColor.new("White")
		snow.Material = "Sand"
		local num = (v.Size.Y/2)+0.05
		snow.CFrame = snow.CFrame + snow.CFrame.UpVector * num
	end
end
1 Like

but, only thing is to find way to separate union with script

@Qinrir @Zenqpa @ValkryieDominus um i need help with a function that separates unions cuz im dumb idk how pls help thx

ok listen union is not possible because there is no functions to do that i suggest you to not do unions ok ?

Don’t separate your Unions to do this, export them to Blender (which makes it easier to clean up the amount of tris in each Union) then when you put a MeshPart in your place you can just decrease its size on one axis to ‘squish’ it.

pretty sure there’s actually not any function with unions…

if there is, it might be a bit complicated

idk im in a bit of a rush sorry

oh! i never knew you could do that with a script XD but idk how to do it can you tell me ?

I’m not too sure how to script it, but if you made all the Unions into MeshParts, then added the ‘snow layer’ MeshPart on top of the original MeshPart (roof, tree, whatever) you could just raise it slightly above the original. If you wanted the snow to get deeper as time went on just raise all the ‘snow’ Parts/MeshParts up slowly in the Game Y axis so it looks like snow is piling up.

oooh ok. Do you know how to turn union into mesh with script though? Because I know how to add snow manually but idk how with script pls help

You can’t.
As I stated before you’d need to take all those Parts you want to cover with snow and export them to a 3D program like Blender to create a Mesh. You could even use all Colors and Materials of Parts and Unions since the snow will be all the same Color and Material.
Not easy if you don’t know how to use Blender, but it could be a great way to learn.

I know how to use blender, but, as i mentioned above, i want to use a script. Thank you for replying, i’ve just decided to ignore unions. BUT. I have another issue. I have parts that might be rotate over 90 degrees and the snow would be sideways. Is there a way to know

Which surface of the part points to the sky? Like, which face of the part is most realistic for there to be snow, which is the most top surface, which isn’t always UpVector and sometimes can be RightVector. How do I know if it’s even LookVector? Please help. Thanks!!!

You can create a script to use in the command bar. Assuming you made all roofs named “roof”, you can do and if then statement to check if the name is “roof”, then if so, it’ll clone, color, materialize, move, and do other things to the part for snow.

u misunderstood. i mean, currently, i use upvector to move the snow. But, if the part is sideways (rotated) the snow would also be sideways. If it is sideways more than 90 degrees, the snow would be unrealistic because it is sideways. If the part only rotate a little, and the upvector is still pointing up, then i still use upvector. But some parts are rotated more than 90 degrees so what can i do?