LDraw.org Discussion Forums

Full Version: Patterns on transparent parts: To BFC or not to BFC?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
After talking to Philo, he said I should ask on the Forum about this matter.

Should I BFC a pattern on a transparent part? If it's not BFC'd and you hit BFC in LDView (with red/green turned off) the pattern stays visible on the backside of the part, if it's BFC's the Pattern is not visible. Anyway, POV-Ray doesn't make any difference. The pattern is visible on the bottom, if BFC'd or not. So from my point of view it doesn't make any difference.

But what do you experts think about it? I'll do as you say.
And there is another problem: viewed from backside, patterned area (removed by BFC) is actually more transparent than transparent, double sided area.
[Image: test.png]

After more thinking, it seems to me that this is a viewer issue (LDView here), not a part issue. Could it be as simple as disabling BFC on transparent parts?
I think it's a problem with LDView. Even if the part is BFC'd the transparent parts aren't shown in red/green.
Daniel Görner Wrote:I think it's a problem with LDView. Even if the part is BFC'd the transparent parts aren't shown in red/green.
The latest beta (4.2b1) does show red/green on trans parts.
The problem with transparent parts is they sometimes need extra modelling in respect to a solid version or the would 'look' wrong. For example if the pattern is visible trough the whole part it should be modeled onto both sides of a 'wall' or sticker sub part depending on the design of the real-life brick , it might even need internal crossbeams to illustrate the material layers inside the plastic etc.

You could even argue transparent parts should be modeled in two fold (all surfaces present in both windings) all over, so it behaves like expected with bfc enabled. And to be absolutely perfect studs and the likes should not simply be placed 'upon' a big rectangle.

All this, off course, is only interesting for extremely high quality renderings. I personally I'm fine with the current transparent parts for editing purposes etc.
I enabled red/green/blue BFC checking for transparent parts in LDView 4.2B1 in order to allow part authors to sanity check the BFC of hard-coded transparent portions of parts. (I think Philo requested this.)

However, it can be argued that the main problem is an LDView bug (and one I was unaware of until now). Unfortunately, I'm pretty sure fixing it would require a great deal of effort, and I'm not sure it will be fixed even in the official 4.2 release. In LDView, BFC is disabled for transparent geometry, but it's not disabled for opaque geometry on transparent parts. One might argue that this geometry should be BFC NOCLIP, but I'm not sure if that argument flies. (I'm not entirely sure it doesn't fly either, which is why I'm not willing to commit to fixing LDView yet, and I'm not sure it's even an LDView bug.)

What does the real life part look like from the back? The pattern doesn't appear the same from the back side, does it? Isn't mostly the base coat visible from the back side? If so, it could be argued that this base coat should be drawn with BFC facing towards the part plastic, but that won't fly due to introducing co-planar polygons. These would look horrible any time BFC is disabled.

I would lean toward saying that pattern geometry that is designed for a known transparent part should be BFC NOCLIP. But this wouldn't solve the problem of using an opaque patterned part in a non-official transparent color, so LDView's behavior is still not optimal.
Reviving this old thread, see my review on this part: http://www.ldraw.org/cgi-bin/ptdetail.cg...p01c01.dat
Any new opinions? I vote for the noclip solution, simple and efficient...
I suppose you could give the paint a thickness. But if it's too thin, then you run into software precision issues. For instance, POV-Ray might produce artifacts in a large scene.
It will complicate too much the parts creation.

I vote for NOCLIP statement.
Rendering the part non bfc would fix most transparent parts making this a rendering problem imho.

Only parts using multiple transparent colors might still end up wrong depending on how alpha sorting is done (part vs polygon level).

If you put noclip in the dat file itself it will result in the same for transparent usage but it will hurt performance of solid usage for the part as it won't do clipping for those ether.
What I suggest is to NOCLIP the pattern portion, and only on parts that are usually transparent. Patterned parts have generally very specific colors, it is highly unlikely that the same pattern appears in opaque and trans parts. And if someone wants to use such a part as opaque, yes, there will be a tiny speed penalty, but I don't think it's that important.