T-Junctions re-visited


T-Junctions re-visited
#1
The recent activity regarding automatic calculation of surface normals in order to produce smooth rendering in other programs (similar to how LDView has behaved for a long time, but via a different, better algorithm) has made me investigate places where LDView's current smoothing is failing, and this has led to this post, a revisit to the subject of T-Junctions.

The point is that, while I never thought about it before, T-Junctions prevent smooth shading from working. If you don't know what T-Junctions are, please see this article. I just updated that article to point out that T-Junctions on curved surfaces prevent smoothing algorithms from working on those surfaces.

Since, as far as I know, this has never been mentioned before, I don't think parts authors in the past have had any particular impetus to go to the significant extra work needed to avoid T-Junctions on curved surfaces. However, given that they prevent just about any reasonable smoothing algorithm from functioning, I think they should be avoided more strongly.

If someone can come up with a simple smoothing algorithm that works with T-Junctions, I will gladly stand corrected, but any such algorithm would also require per-pixel lighting in order to work with T-Junctions, and I think even with per-pixel lighting, the algorithm would end up being downright nasty.

The only alternative I can think of is to detect the T-Junctions during file loading, and automatically split the geometry involved. That doesn't seem very easy either, though. Does anyone know of a good, fast algorithm to do this? If so, we could potentially recommend that in all LDraw renderers, and remove the recommendation against T-Junctions in parts entirely.
Reply
« Next Oldest | Next Newest »



Messages In This Thread
T-Junctions re-visited - by Travis Cobbs - 2013-03-12, 5:38
Re: T-Junctions re-visited - by Tim Gould - 2013-03-12, 6:31
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-12, 18:17
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-12, 18:32
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-12, 18:55
Re: T-Junctions re-visited - by Travis Cobbs - 2013-03-13, 18:27
Re: T-Junctions re-visited - by Allen Smith - 2013-03-12, 21:01
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-13, 17:37
Re: T-Junctions re-visited - by Tim Gould - 2013-03-13, 21:31
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-17, 15:43
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-17, 16:02
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-18, 14:30
Re: T-Junctions re-visited - by Travis Cobbs - 2013-03-18, 17:57
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-18, 18:27
Re: T-Junctions re-visited - by Travis Cobbs - 2013-03-18, 19:23
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-18, 20:41
Re: T-Junctions re-visited - by Travis Cobbs - 2013-03-18, 21:59
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-19, 1:09
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-19, 18:43
Re: T-Junctions re-visited - by Tim Gould - 2013-03-20, 10:56
Re: T-Junctions re-visited - by Travis Cobbs - 2013-03-20, 17:13
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-20, 17:23
Re: T-Junctions re-visited - by Travis Cobbs - 2013-03-20, 17:29
Re: T-Junctions re-visited - by Travis Cobbs - 2013-03-20, 17:26
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-20, 18:18
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-20, 13:42
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-20, 13:58
Re: T-Junctions re-visited - by Allen Smith - 2013-03-20, 16:08
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-20, 18:50
Re: T-Junctions re-visited - by Tim Gould - 2013-03-13, 22:56
Re: T-Junctions re-visited - by Sergio Reano - 2013-03-13, 22:51
Re: T-Junctions re-visited - by Tim Gould - 2013-03-14, 0:10
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-15, 3:17
Re: T-Junctions re-visited - by Tim Gould - 2013-03-15, 3:41
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-15, 17:56
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-14, 1:58
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-14, 2:37
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-14, 3:18
Re: T-Junctions re-visited - by Travis Cobbs - 2013-03-14, 22:23
Re: T-Junctions re-visited - by Tim Gould - 2013-03-14, 22:41
Re: T-Junctions re-visited - by Tim Gould - 2013-03-14, 2:43
Re: T-Junctions re-visited - by Tim Gould - 2013-03-14, 3:18
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-15, 3:15
Re: T-Junctions re-visited - by Travis Cobbs - 2013-03-15, 19:27
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-16, 0:08
Re: T-Junctions re-visited - by Ben Supnik - 2013-03-17, 15:58
Re: T-Junctions re-visited - by Travis Cobbs - 2013-03-18, 19:28
Re: T-Junctions re-visited - by Travis Cobbs - 2013-03-18, 19:32
Re: T-Junctions re-visited - by Sergio Reano - 2013-03-26, 21:46
Re: T-Junctions re-visited - by Sergio Reano - 2013-03-27, 20:48

Forum Jump:


Users browsing this thread: 1 Guest(s)