How to fix overlapping faces, Z-fighting?


(Complete newbie to Blender, have the Essential Blender book etc.)

(Executive summary: made a text object, extended and bevelled, with overlapping letters: many of the faces are overlapping and causing z-fighting)

I’m trying to make a ‘logo’. I added a text object, adjusted the spacing so the characters are slightly overlapping, and added some depth, and a bevel.

Converted to a mesh but all the while there are lots of faces from different letters occupying the same plane/space. I know from a bit of game development and graphics knowledge this manifests itself as ‘z-fighting’ when rendered.

I want to merge these overlapping faces, however edge, face, vertex manipulation by hand is way too fiddly, the faces generated are not trivial. I have tried splitting each letter into its own mesh, and merging them using the Boolean union operation, no luck, same but converting tris to quads or vice versa, no luck. As a single mesh I tried removing duplicate vertices, no luck, etc etc.

I just can’t find a way to do it, ie merge the faces or something like that, in Blender! Mathematically it really seams fairly straightforward to do: find two triangles which are overlapping,calculate the resulting polygon, then convert that polygon back to triangles and replace the first two… rinse and repeat until there are no more triangles overlapping.

Is there any operation which will fix this? I figured I’d start off easy: get some text, extend it into 3d space, voila… :confused: Any help would be greatly appreciated, of course!


The simplest way is to just use Lux to render the image. I discovered that Lux does not support the ugly feature of rendering overlapping faces as black, like the Blender Internal does.

Otherwise, you should design your logo externally and then import it as a curve. Then you can extrude and bevel it without face interference. Designing the logo in Blender, then fixing all the mistakes is a waste of time.

Thanks for the info. I’m using Blender to design and model, I don’t have any other design software which will produce the same result I got using a text object and extending/bevelling.

I’m not using Blender to render, I’m exporting the mesh/model for use in a 3D application - is there really no way to get rid of, or merge, the overlapping faces? Perhaps rather than giving the text a depth there’s some 2D operation I can do on the text object when the characters overlap, and build it up from there? Would have thought a 3D modelling app would be perfect for this?

OK, so the advice from the blender forum is, don’t use blender to design it, don’t use blender to model or fix it, and of course don’t use blender to render it.

I take it I have an impossible task, if someone could confirm that, and tell me what software to use I’d be grateful

Maybe you could post an image/blend so people can see exactly where you’re having problems.


first of all relax

convert your text to a curve
and then separate the letters that you are having problems with, into another curve object (maybe every second letter)

then use a slightly different extrude value (.0001 smaller than the other letters)
so the faces aren’t occupying the same space
(or you could translate them backwards or forwards)

but post a blend or a pic so we can see exactly

I wonder if you could do this: (caution: extemporaneous thinking …)

Separate the letter meshes and put each one into, say, one of two different layers. (Just do it such that the letters in each layer do not overlap one another.)

Now, rig up a render-noodle network that separately renders each of the two layers. Pipe these into a compositing node that favors the closest “Z.”

Other nodes can be added to take care of shadows, etc.

While that might sound like “a lot more work,” it should eliminate the problem and give you precise control over the outcome.