How to subdivide this n-gon shape to avoid artifacts?

I have this object which I filled with flat N-gon faces such as this highlighted face.

And then I raised it using Propertional Editing.

As expected it would produce the following artifacts when rendered.

I tried to hide the other faces with H in Edit Mode and then subdivide this face using the Bisect Tool.

But I'm not sure if this is the proper approach to give this face more subdivisions to avoid this issue.

I also tried using Face > Grid Fill to no avail. I get the error

Select two edge loops or a single closed edge loop from which two edge loops can be calculated

How do I subdivide this n-gon shape properly?

I attached a sample blend file for the outline that does not accept a Grid Fill. If I do a Merge By Distance of 0.05m then the Grid Fill works but I don't want to reduce the amount of vertices.

The reason you can't have Grid Fill to work is simple : you can't have an all-quads topology fill a closed loop with odd number of vertices.

Grid Fill fills a closed edge loop or two edge loop with the same amount of vertices with an all-quads topology and if you select the edge loop on your file, you can see that is has 721 vertices :

If you want to fill that with an all-quad topology (whether you Grid Fill it or you fill it by hand), you will have to add one vertex or dissolve one so that you get an even number of vertices. That's why it works when you Merge By Distance.

If you don't want to reduce the vertices, you can just add one by subdividing one of the edges and then Grid Fill.

The grid fill will work but it may give you a weird result like this where the faces overlap or the new vertices go outside of the original edgeloop :

This happen offten when you try to Grid Fill non-convex shapes like this one.

You can try to correct it by changing the Span and Offset value of the operator but in my case, I couldn't find any values that gives a decent result so my solution would be to give the Grid Fill a "little help".

Undoing the last grid fill I attempted, I separate the shape into smaller convex shapes that would be easier for Grid Fill to deal with. I just make sure that each part has an even number of vertices around it :

Then apply Grid Fill on each part and tweaking each result to give the best outcome. It will take some time but it would give something like this after you smooth the inner vertices a few times with W>Smooth Vertices :

This method is the fastest way I could find with native Blender tools. If the results doesn't satisfy you, you could always try to fill it by hand or use ALTF to fill it with triangles and remesh it with addons like Quad Remesher.

• Hey thanks so much! it's funny that blender didn't tell me that i needed to have even number of vertices! coz i would have assumed that it may just have made the last face a triangle instead of a quad to complete the fill. Nov 30, 2022 at 8:02
• Oh the error should have said "Select two edge loops or a single closed edge loop from which two edge loops can be calculated, meaning you need even number of vertices :D Nov 30, 2022 at 8:08
• Well, indeed. The error message should at least give a hint to that. Anyway, that's how it works Nov 30, 2022 at 8:08
• i found another solution! i just create another plane and subdivide it into neat squares, then i make sure the plane aligns with my n-gon and go to Face > Intersect (Knife) and use the intersected section. Nov 30, 2022 at 12:45
• Seems faster. And it could be what you need. What about the polycount? Nov 30, 2022 at 13:13

An alternate solution would be to create a plane and put several subdivisions on it and then overlap it on the surface you want to subdivide.

Give your mesh a slight thickness via extrusion ( E ) and select it and go to Face > Intersect (Knife).

This will slice into your subdivided plane. Now you can delete the extruded part. Then select all with A and press M > Merge By Distance.

Select the excess faces around your mesh and delete them. Now you are left with a subdivided mesh. Not perfectly quad topology as you may end up with some triangles at the mesh boundaries, but at least it is cleaner and only uses fewer faces.