Intermittent transparency


#1

Wow. I can’t believe I’m posting this. It’s been months since I’ve touched SU (that’s how it goes with me), and I have troubles with seeing underlying structures through other elements as I zoom and change view. Imagine a stud wall with 1/2 sheetrock or plywood on it (so there is depth): I can see the studs from various positions. I remember this problem but can’t remember the solution, and am a little amazed that I just spent 15 minutes looking for it here and on google and can’t find it. I think there’s a weird name for the effect. This is a little maddening. Here’s an example:

The red is an applied material. Everything is set at 100% opaque. Wow, this is driving me nuts: of course I should remember the answer, but it should also be more findable. I suppose it might be this computer, it has a low-quality on-board video card. Thanks for any help!


#2

The word Bleed in the search field would help find relevant posts.
Here is one.


#3

See:
Are lines showing through faces from a distance? — SketchUp Sage Site


#4

This helps but faces might still bleed through at some viewing angles.
Stud components on their own layer may also help solving the problem.


#5

Thanks for the replies.
Hiding the edges worked. It’s sort of weird, moving the “panel” away from the studs DIDN’T help: I moved it as much as 1" away, and from a distance the studs/joists would still show through. I feel like this issue has been haunting 3d drawing programs forever, I’d expect it to be solved by now but I suppose that means it’s harder than I think.
In any case, hiding the edges was the only thing I found that worked. Since the elements were components, it wasn’t hard.
I tried this on a slightly better video card/computer and it didn’t make any difference.


#6

It wouldn’t. The problem is inherent to the way OpenGL handles distance away from the camera. It is essentially the same phenomenon as the shimmering “z-fighting” you see when you place two faces at the same location in a model.

As I understand it, OpenGL breaks distance into a large but fixed number of increments. It decides what is in front of what else in the view based on which increment they fall into. As you back the camera away from the model (zoom out), the increments become larger because they have to cover all of the distances in the view. When you zoom out far enough, the increments may become larger than the difference in distance to a front surface and the things behind it. OpenGL can then no longer decide which is “in front”, so it displays both!

Much of the time this isn’t a problem because the objects themselves zoom to such small sizes that you can’t see the bleed. But for large flat surfaces, it can be quite visible. Spacing things away from each other or giving them some thickness will often help, but at a sufficient distance they will still fall into the same increment and will still bleed through. Making the ones “behind” not visible (either by hiding or layers) is the only sure-fire way to prevent bleed.


#7

Thanks, that was a very helpful description, and totally makes sense. I’ll stop resenting it now! :wink: