BlenderBlender Basics

Displace and Shrinkwrap modifiers: bumpy ground from a texture, and sticking to another surface

Put a Displace modifier with a Clouds texture on a flat grid to make hilly ground, and see how Strength, Midlevel, and point count change the result. Then use the Shrinkwrap modifier to stick a road strip onto that ground, compare Nearest Surface Point with Project, and go through modifier order mistakes, all on real screens.

AZTechnology15 min read

한국어English

Based on: Blender 5.2 LTS (screenshots from 5.2.1, English interface, default shortcuts). Checked in November 2026. All images are real Blender screens. Red numbers, boxes, and the labels on comparison images were added for explanation. The Properties editor was widened so the text is easier to read. From Figure 9 on, the road strip is colored blue so it stands out from the ground.

Shaping ground with hills by hand means raising and lowering thousands of points one by one. The Displace modifier reads a black-and-white pattern (a texture) and raises the bright parts and lowers the dark parts. It is like laying bumpy stones under a flat sheet: the sheet rises in the shape of the stones.

Once the ground is made, you need to put things on it, like a path, a puddle, or a patch of moss. The ground is bumpy, so a flat panel either floats or sinks into it somewhere. The Shrinkwrap modifier sticks a panel's points onto another object's surface. It works like plastic wrap over a bowl, which clings to the bowl's shape.

This is the last guide in the modifier series, so at the end it collects mistakes caused by modifier order in one place.

When you finish this guide, you will be able to do the following.

  1. Make hilly ground with Displace and a Clouds texture.
  2. Set the height with Strength and Midlevel, and the detail with point count.
  3. Stick a road strip onto the ground with Shrinkwrap.
  4. Choose between Nearest Surface Point and Project.
  5. Tell when modifier order changes the result.

1. Prepare a plane with many points

Starting point: a new file (File > New > General). Select the default cube and delete it with X > Delete.

Displace moves points up and down. A plane with only four points moves only its four corners, no matter what pattern you give it. So we start with a dense grid.

Follow along:

  1. With the mouse over the 3D Viewport, press Shift+A > Mesh > Grid.
  2. Open the Add Grid panel at the bottom left and enter X Subdivisions 100, Y Subdivisions 100, and Size 10 m.

Seen from above at an angle. One flat gray square grid is selected with an orange outline, with a camera at the lower right Figure 1. A grid 10 m on each side with 100 by 100 faces (Blender screenshot)

100 by 100 means 10,000 faces and a little over 10,200 points. That seems like a lot for one floor panel, but you need about this many to show the shape of the ground (section 4 compares).

2. Add Displace: without a texture the whole panel floats

Starting point: the grid from the previous section (named Grid), selected in Object Mode.

Follow along: in the Properties editor, open the Modifiers tab (wrench icon) and choose Add Modifier > Deform > Displace.

The Deform submenu of Add Modifier. The Displace row has red box 1, and the Shrinkwrap row lower down has box 2 Figure 2. The Add Modifier > Deform menu. 1: Displace 2: Shrinkwrap (section 6) (Blender screenshot)

The grid is not bumpy but has risen a little, still flat. In the Displace panel, the texture field shows a New button (box 1), and below it Direction Normal, Strength 1.000, Midlevel 0.500 (box 2) Figure 3. Displace added with no texture. 1: New in the texture field 2: Midlevel 0.5 (Blender screenshot)

The ground does not get bumpy. The whole panel rises 0.5 m and stays flat. When the texture field is empty, Displace reads every point as 1.0 (white). The distance a point moves is:

distance moved = (texture value − Midlevel) × Strength

Here that is (1.0 − 0.5) × 1 = 0.5 m. The direction (Direction) is Normal by default, which means the way the face points. On a flat plane that is up. If "the panel just floated up", you have not picked a texture yet.

3. Make hills with a Clouds texture

Starting point: the grid from the previous section (Displace, no texture).

Follow along:

  1. Click New in the texture field of the Displace panel. A texture named Texture is created. Its first type is Image or Movie, so there is no pattern yet.
  2. Click the Texture tab (checkerboard icon) at the bottom of the tab column on the left of the Properties editor.
  3. Change Type to Clouds. The Preview shows a black-and-white cloud pattern.
  4. In the Clouds panel below, change Size from the default 0.25 to 1.5.

The Texture tab. At the top, the Texture used by Displace, and the Type field set to Clouds (box 1). The Preview shows a gray cloud pattern, and the Clouds panel below shows Noise Basis Blender Original. The grid in the viewport has gentle hills Figure 4. The Texture tab. 1: Type: Clouds. The image is after Size was changed to 1.5 (Blender screenshot)

  1. Go back to the Modifiers tab.

The grid seen at an angle has become ground with gentle hills and valleys. The Displace panel shows Texture, Coordinates Local, Direction Normal, Strength 1.000, Midlevel 0.500 Figure 5. Ground made with a Clouds texture (Blender screenshot)

Size in Clouds is the size of one blob of the pattern. Small values give a rocky field, and large values give gentle hills. With the default 0.25, the bumps on this 10 m grid are too small and it looks like rough, rocky ground.

4. Set the height and the detail

4-1. Strength and Midlevel

Starting point: the ground from the previous section (Strength 1, Midlevel 0.5).

Follow along: change Strength to 2, then set it back to 1. Next change Midlevel to 0, then set it back to 0.5.

Two panels. Strength 2: hills and valleys are much deeper. Midlevel 0: the bumps are about the same, but the whole ground has moved up Figure 6. Left Strength 2, right Midlevel 0 (Blender screenshot)

FieldWhat changing it doesPicture it as
StrengthMakes the height difference bigger or smaller. Negative values swap hills and valleysHow hard the stones push up
MidlevelMoves the whole ground up or down. Brightness equal to this value stays in placeWhere you set the floor level

Midlevel 0.5 means "middle gray stays in place, brighter goes up, darker goes down". At 0, only black stays in place, so almost every point goes up. If the ground must sit at the level of a floor panel, it is easier to keep 0.5 and set the height with the object's position.

4-2. Point count

Starting point: select the grid from the previous section and hide it with H.

Follow along:

  1. Press Shift+A > Mesh > Grid and set X and Y Subdivisions to 10 and Size to 10 m.
  2. Add Add Modifier > Deform > Displace, and choose the Texture you made earlier from the list next to the texture field.

Two panels. The 10 x 10 grid, with the same texture, looks like a few angular panels bent together. The 100 x 100 grid has smooth hills with small bumps Figure 7. Same texture, same values. Left 10 by 10, right 100 by 100 (Blender screenshot)

Same texture, same Strength, but the results are completely different. No matter how fine the texture is, height only changes where there is a point to read it. It is like printing a newspaper photo with large dots: the face gets blurred. More points mean more detail, but also more weight.

5. Modifier order mistakes

Starting point: the 10 by 10 grid (Displace) from the previous section, still selected.

5-1. Subdivision Surface goes above Displace

If you lack points, you can add them with Subdivision Surface. But where you put it matters.

Follow along:

  1. Add Add Modifier > Generate > Subdivision Surface and set Levels Viewport to 3. It is added below Displace.
  2. Click the down arrow at the top right of the Subdivision panel > Move to First to move it above Displace.

Two panels. Displace > Subdivision: the bumps of the 10-square grid are smoothed into low, blurry hills. Subdivision > Displace: the ground keeps fine bumps Figure 8. Left Displace then Subdivision, right Subdivision then Displace (Blender screenshot)

Modifiers are calculated from top to bottom. With Displace first, only 121 points read the pattern and move, and Subdivision just rounds off that rough shape. With Subdivision first, the points are added first, and then all of them read the pattern. Put modifiers that add points above Displace.

5-2. Order mistakes from this series

PairCorrect order (top > bottom)If reversedCovered in
Subdivision Surface, DisplaceSubdivision > DisplaceToo few points to read the pattern, so bumps get blurredThis guide, section 5-1
Array (Legacy), CurveArray > CurveOnly one piece bends, and copies sit scattered with the same tiltCurve modifier, section 4-3
Screw, SolidifyScrew > SolidifyThickness is given to a line with no faces yet, so the rim of the opening is not closedScrew modifier, section 6
Displace, Shrinkwrap (on another object)The ground (Displace) is finished firstNot an order problem. If you turn off the ground's modifier, the road sticks to flat groundThis guide, section 6

If you get confused, remember the order "make the shape > add points > move points > thickness and finishing". It is not a rule without exceptions, but when a result looks wrong, trying a different order first is usually the fastest way to find the cause.

When you are done, delete the 10 by 10 grid with X > Delete and show the hidden 100 by 100 grid again with Alt+H.

6. Stick a road strip to the ground with Shrinkwrap

Starting point: the 100 by 100 ground from section 3 (Displace, Clouds Size 1.5, Strength 1).

Follow along (make the road strip):

  1. Press Shift+A > Mesh > Grid and set X and Y Subdivisions to 4 and Size to 1 m. Rename it Road.
  2. Press Tab > A, then make a strip 0.8 m wide and 8 m long with S > X > 0.8 > Enter and S > Y > 8 > Enter.
  3. Lift it above the ground with G > Z > 1.5 > Enter, then press Tab to leave.

A flat blue strip floating above the bumpy ground. The Modifiers tab on the right is empty Figure 9. A flat road strip floating above the ground (Blender screenshot)

Follow along (stick it on):

  1. With the road strip selected, add Add Modifier > Deform > Shrinkwrap.
  2. Choose Grid (the ground) in the Target field.

The blue road strip has settled onto the ground, but it is bent into a few large flat panels crossing the hills. In the Shrinkwrap panel on the right, Wrap Method Nearest Surface Point, Snap Mode On Surface, and the Target Grid row has red box 1 Figure 10. 1: Target: Grid. A road strip with few points sticks to the ground in only a few places (Blender screenshot)

The road strip has settled onto the ground. But it cannot follow the small bumps and is bent into a few large panels. Like Displace, Shrinkwrap moves points. With only 25 points, only those 25 places stick to the ground, and the faces between them stay flat.

If the ground you chose as Target has a Displace modifier, Shrinkwrap sticks to the bumpy ground with Displace applied. If you turn off the ground's Displace, the road sticks to a flat floor.

  1. Select the road strip, press Tab > A, and choose Edge > Subdivide. In the Subdivide panel at the bottom left, set Number of Cuts to 12, then press Tab to leave.

7. Nearest Surface Point and Project

Starting point: the subdivided road strip from the previous section (Shrinkwrap, Target Grid).

With more points, the road strip follows the bumps of the ground. But, as on the left of Figure 11, the edges of the road get jagged.

Two panels. Nearest Surface Point: the road follows the ground but its edges zigzag, getting narrower and wider. Project (Z): the road keeps an even width all the way while following the ground Figure 11. Left Wrap Method Nearest Surface Point (default), right Project (Z axis, both directions) (Blender screenshot)

The default, Nearest Surface Point, moves each point to "the closest point on the ground's surface". On a slope, the closest point is not straight below but off to the side, so points slide sideways and the road's shape gets distorted. For things whose shape seen from above must stay the same, like roads and puddles, use Project to drop them straight down.

Follow along:

  1. Change Wrap Method to Project.
  2. Under Axis, turn on Z.
  3. Turn on both Negative and Positive. By default only Positive is on, so it only searches upward. With both on, it sticks to whichever surface is closer, above or below.
  4. Set Offset to 0.05.

The Shrinkwrap panel switched to Project. Wrap Method Project has box 1, Axis Z on has box 2, Negative and Positive both checked have box 3, and Offset 0.05 m at the bottom has box 4. The blue road in the viewport follows the ground with an even width Figure 12. 1: Wrap Method: Project 2: Axis Z 3: Negative and Positive 4: Offset 0.05 m (Blender screenshot)

Offset is the distance to keep from the surface. At 0, the road's faces and the ground's faces sit at the same height, and the two can flicker through each other in the viewport or in renders. Lifting it a tiny bit keeps the road on top.

Wrap MethodWhere it moves pointsGood for
Nearest Surface Point (default)The closest point on the surfaceWrapping from all sides, like fitting clothes to a body
ProjectWhere a ray along the chosen axis hitsThings placed from above, like roads, puddles, floor decorations
Nearest VertexThe closest point of the targetMatching exactly to the target's points (no Snap Mode)
Target Normal ProjectLike Nearest Surface Point, but smootherWhen you need a smooth result. Much slower

With Project, points that hit no surface stay where they are. If the end of the road goes past the edge of the ground, only that part floats, so keep the road strip inside the ground.

Practice

  1. Instead of Clouds in section 3, change Type to Voronoi and see what kind of ground you get.
  2. Change the ground's Strength to -1. Check how hills and valleys change, and whether the road strip follows.
  3. Raise the road strip's Offset to 0.3. Check that the road still follows the ground but lifts up as a whole.

Common mistakes and fixes

SymptomCauseFix
The whole panel floated up after adding DisplaceThe texture is empty, so every point reads as white (1.0)Make a texture with New and choose a Type (sections 2 and 3)
The texture exists but there is no patternIts first type is Image or MovieChange Type to Clouds or another type in the Texture tab
The ground looks like a few angular panelsToo few pointsMore grid squares, or put Subdivision above Displace (sections 4-2 and 5-1)
The bumps are too smallClouds Size is smallRaise Size (section 3)
The road cuts through the groundThe road strip has too few pointsSplit the road strip with Subdivide (section 6)
The road edges are jaggedNearest Surface Point moves points sidewaysProject + Axis Z (section 7)
The road does not move after switching to ProjectNo axis chosen, or only Positive is on so it searches upward onlyAxis Z, turn on both Negative and Positive
Road and ground flicker through each otherThe two surfaces overlap at the same heightGive Offset a small value

Summary

Use Displace on a panel with many points, always pick a texture and set the bump size with Size, and put modifiers that add points above it. For Shrinkwrap, pick a Target, use Project + Z for things placed from above, and add a small Offset.

Pick other modifiers from Every Blender modifier in one list.

Previous: Curve modifier with Array · Whole series: Every Blender modifier in one list

References

KEEP EXPLORING

Read next

EEVEE render of a red cloth pinned at three points along its top edge, hanging down over a gray floor (Blender render)Blender
Blender Basics15 min read

Blender 5.2 LTS hands-on: node physics, new geometry nodes, EEVEE, and online assets

We try the big changes in Blender 5.2 LTS, released in July 2026, on real 5.2.1 screens: node-based cloth physics, the Mesh Bevel and Sample Sound Frequencies nodes, EEVEE settings, online asset libraries, and the now built-in To Circle. We also list what changed for older files and scripts.

Cup model with Face Orientation on. Two areas, lower left and upper right, are red and the rest is grey, with a handle on the rightBlender
Blender Basics14 min read

Checking a model before 3D printing: find and fix holes, flipped faces and overlaps with built-in Blender tools

Use one deliberately broken cup to find holes, flipped faces and overlapping parts with Face Orientation, Non Manifold selection and the Intersect check in Mesh Analysis, then fix them with Recalculate Outside, Fill Holes and Boolean, and run a final check.

The same night scene rendered twice side by side. Left: the original with three street lamps, a house, a box, and a blue ball. Right: the composited version, with a soft glow around the lamps and windows and darker edges (Blender render)Blender
Blender Basics14 min read

Blender compositor basics: color grading, glow, and vignette after rendering

In the Compositing workspace of Blender 5.2, we create a new node tree, adjust the colors of a rendered image with Color Balance, add a glow around lights with Glare, darken the edges with Vignette, and save the result to a file.

blender.org download page. Top: LATEST RELEASE Blender 5.2.3 LTS. Bottom: UPCOMING RELEASE Blender 5.3 and Expected November 10, 2026Blender
Blender Basics8 min read

Blender LTS or the regular release: how the 4-month cycle and 2-year support work

Learn from the official documents how Blender ships a new version every four months and picks one per year as an LTS fixed for two years, which of 5.2 LTS and the coming 5.3 to choose now, and how settings stay separate when you install both.

Twelve cubes standing in a circle with a 6 m radius. Red numbers on the Shape Circle, Count 12 and Radius 6 m rows of the Array panelBlender
Blender Basics10 min read

Array modifier: rows, stairs and circles from a single object

Use the new Array modifier (new since Blender 5.0) to line up the default cube, set spacing and build stairs with Offset, and arrange copies in a circle with Shape Circle. Also see how the Array (Legacy) panel from older tutorials maps to the new one.

A cube with only the four top edges rounded and the vertical side edges still sharp. Red numbers on the Limit Method Weight and Edge Weight bevel_weight_edge rows of the Bevel panelBlender
Blender Basics11 min read

Bevel modifier: round edges, and only the ones you want by angle or weight

Round edges with Amount and Segments in the Bevel modifier, choose which edges to bevel with the Angle and Weight limit methods, and see how Clamp Overlap keeps the shape clean when the bevel is too wide, using the default cube and a cylinder.