Issue with Terrain FillBlock

This might be a stupid question but…

I’ve come across an issue while using the FillBlock function where the block that is generated by the terrain does not have the exact position as assigned.

Here is what I mean:

So, for my game I need certain parts of the terrain to be a completely flat plane of grass in a specific position.

So I made a simple line of code to Fill a block of terrain from a part’s cframe and size

local Terr = workspace.Terrain
local p = workspace.Folder.Model.Ground 
Terr:FillBlock(p.CFrame,p.Size,'Grass')

but when I run the code, the grass plane that is generated does not have the same position as the part.

Take a look:
https://gyazo.com/b04bd9a7f57354abe7ebaa21788ef39d.gif

As you can see, the grass is generated slightly below the part

Is this because the smooth terrain snaps to a grid when generated?

Is there any way to solve this?

Thanks in advance for any replies. :slight_smile:

Since terrain uses a Voxel grid when it generates, it isn’t perfect when it comes to precision. That’s why:

  • The region terrain tool has such a big snap increment (it snaps to the voxel grid).
  • This behavior is present.

Sorry pal, this is just how terrain works.

5 Likes

Yeah thought so, Thanks for clarifying :slight_smile: