Objects "behind" fully opaque 3D objects should be invisible and should not be selectable

I am preparing a detailed model of a 1.5 story cabin for a client who wants a comprehensive list of materials with it. Everything in the model is either a component or in a group. Two things are happening that are baffling me. First, sometimes when I try to select an object, another object that I cannot see because it is behind, gets selected instead. Second, the outlines of objects that are behind other objects that are defined as being 100% opaque. often are visible. This is quite annoying when I want to show the model to someone (like the client or the builder - or my wife) to get some feedback. They cannot ignore those objects and it erodes their confidence. Is there a setting I am missing? In case it helps, the second issue seems to be related to the field of view. As I zoom in, the outlines of objects begin to disappear concentric with the centre of the field of view. The other people find this extremely off-putting. So I do as well. What can I do to get rid of this “feature”?

Are you working with the Camera set to Parallel Projection?

This isn’t unusual when you have things like wall studs with sheathing over it. The studs can bleed through. This is due to limitations in your graphics card’s OpenGL handling of faces that are very close to one another. It tends to show more when the camera is at a greater distance. The solution is to give the objects tags and turn off the visibility of those entities that lie behind others.

The issue is not dependent on the camera setting. It occurs with all of them. If my graphics card is the issue, I may be able to do something about it. Before I go off and spend some money, however, I want to confirm that my problems will be resolved. Do you have a way of confirming that for me? Perhaps some anecdotes from others in this community will do it. Then I will need to know which graphic cards will work.

As for the “solution” (it’s actually a work-around) being to use tags, REALLY?! Totally impractical! First of all, this client and her builder want to see how the thing goes together. If the brief was to produce a diagram that shows a street view when the cabin is ready to receive guests, I would have done that. Secondly, it is work I should not have to do. Opaque means light does not “bleed through”.

Share your file so we can try it with other graphics cards.

If it’s a work around it’s one to compensate for that fact that OpenGL and your graphics card have limitations for distance resolution. Proper use of tags and scenes helps to get around those limitations.

Thanks Dave. I will extract a portion of the model that will allow the testing. I cannot do that until later this evening (I am in the Eastern Time Zone), so you might not get it before tomorrow.

FWIW, here I can induce the bleed through but I have to zoom way out to push the limits of my graphics card’s OpenGL for that to happen.
bleed

Another thing to consider is edge style. Finer edges and profiles bleed less.

Also output often does not show the same level of bleed-through that a direct display view does.

A different graphic card may alleviate it but will never get rid of it.
If you are using components you can always hide the relevant edges.
Bleed

1 Like

I have had some time to explore the solutions that have been offered and conclude that, unless I am willing to spend more money than I am actually willing to spend at this time to get better gear (conclusion is included in the clause), using a method, or a combination of methods, to turn visibility on and off is the only viable option for me. I had great hope for the “smooth/soften edges” technique, but it had absolutely no impact. Thanks for your feedback.

Just to let you know where I am coming from on this, I am fairly new to SketchUp and 3D modelling in general. I do, however, have close to 35 years experience modelling using software packages. Most of those packages have implemented one formalism or another that imposes restrictions on what the modeller can do with objects to ensure coherence in the result. SketchUp does that, of course, but only to allow us to produce the models. There are no end goals built into it that would allow any restrictions and that is a good thing.

I have often been disappointed with the packages I used because I found they did not impose the restrictions with enough vigor to prevent people who did not have either the wit, the energy, or the drive required to produce a robust model. The result always ended up punting invisible problems down the line. I have even written papers describing the differences between a model and a diagram in a forlorn attempt to pre-empt some of these issues. I am still waiting for a thank you for them.

There is no formalism in 3D modelling. That is an inherent characteristic of it and one we need to celebrate. In this instance, the issue is that, metaphorically, one can easily find oneself swimming among the weeds. With my experience, I naturally hoped that light would not pass through an opaque object. Having encountered it, I now understand how and why that hope was foolish and a workaround is the answer.

I have often wondered why the developers of sketchup cannot create a method of having relationships between objects, the camera position and the viewer. In other words, based on the geometry position in the model, faces/edges would automatically be hidden based on other objects in front of them based on where the current camera is positioned. Is this just lazy minds programming our 3D software or would a quantum computer be required for this :slight_smile:

It isn’t lazy programming, it is just a limitation of graphics technology. The positions of the camera, model contents, etc. are tracked continuously. The issue arises because the graphics system divides distance from the camera into ranges. When two objects fall into the same range bin, the graphics can’t determine which is closer than the other. Rendering based on effectively continuous range would fix the issue, but isn’t within the ability of existing hardware or software without horrendous performance slowdown.

3 Likes

The point of my post is to challenge the developers to program objects to become hidden automatically based on the camera position and whether the object is solid or not. I have heard all of this rigmarole about hardware before. I want responses from renaissance men who want to tackle this, not people who want to defend the status quo

It is sad that you take an explanation of the limitations of current technology as defense of the status quo and also that you assume nobody has tried or is trying to address the issue.

4 Likes

It is sad that you cannot think out of the box and address the bigger issue. I came here for solutions, not preaching to me about what currently exists. I am going to only respond now to people who want to talk about solutions.

Is what you are seeking available with other softwares? Example?

1 Like

Oh boy, I am not talking about other software. This is a challenge for the SketchUp Developers. Please people, open your minds and leave your bias behind. Your beloved software can get better, I know, shocking lol

Well, I would like to see an example of what you are saying.

It is a challenge to the world. Bleed through happens because computing is digital. First saw it in the late 1980s when making my first perspectives in AutoCad. Maybe a quantum computer or some kind of analog device with an infinite precision…

1 Like

It is encouraging to see there is some interest in this in the community, but I don’t want to be the one who started a fight in a bar and slipped out the back door as soon as it got underway. If I may, gentlepeople, it appears to me that both positions are correct, i.e. the current issue is the way data is handled by the graphics card AND it is possible to send data to that card that pre-empts the problems I encountered. The issue comes down to a balance between processing at the application layer and at the “hardware” layer. It is possible to process a model before sending an image to the graphics card that makes the objects that lie behind other opaque objects invisible by removing them. The problem is not conceptual but the processing power required to do it while navigating around the model’s space. Any good modeller does not need that while they are preparing the model and can ignore the noise while they review it, but when you present a model to a client it needs to be neat. Lines that bleed through make that impossible. There is a workaround, but it is excruciatingly annoying. I had to reconfigure my hierarchy in the Outliner to allow me to put scenes together that would do what I needed when I presented the material to the person who has their wallet open. It would be helpful if I could have more than one hierarchical arrangement - one I use to support the modelling effort and one I use to present the model to my client. Perhaps another would be useful to present it to the builder. Their interests are unique as well and I don’t expect them to be friendly with a 3D modelling tool.

1 Like

One of the main benefits of SketchUp is that you can work and edit in the ‘endresult’ which is also the main bottleneck.
Modern Viewers are more capable in handling z-fighting or bleeding (I once read somewhere on this forum that the range for the SketchUp editor was set to one inch, I believe, but most likely, the screen resolution has influence on that)
In Trimble Connect, for instance, the distance of the camera has an effect on what parts are shown, making it easier for low capacity graphic engines to deal with a complex model.