CompuServe Thread

#Hidden Line rendering

13 messages in this thread
#144872From: Aaron WeintraubJan 3, 1995 9:50 PM
Is it possible to do a hidden line rendering in 3DS? I always assumed that this was a simple thing to do, but I never actually needed to do it. Now, I've set out to try it and can't figure out a way. Wireframe doesn't cut it, because objects are transparent and even with 2-sided Off, you see the fronts of objects that are behind the frontmost object, which is wrong. Also, I only want to render edges that are visible in the editor, so using a face map material with just an outline won't cut it (although I'm quite proud of myself for thinking of this solution <g>). Any ideas? Aaron
#144876From: Yost GroupJan 3, 1995 10:02 PM
The closest you can get to hidden line in 3DS is by using an outlined face map, Aaron. – G
#144883From: Aaron WeintraubJan 3, 1995 10:26 PM
> The closest you can get to hidden line in 3DS is by using an outlined > face map, Aaron. I was afraid that was the case. Now let me ask this question: How does the renderer determine which faces to apply the map to? Eg., If you have a map that is simply a square border, and you face map it on a cube, each side of the cube will be a square. So far, so good. However, if you hide some of the edges of the cube, it will now render ALL the lines of those faces with hidden edges. My question: Why didn't it render the hidden diagonal line across the square cube faces the first time? Aaron
#144919From: Ted BoardmanJan 4, 1995 5:19 AM
Aaron What gets mapped is determined by edge visibility only, as you noticed. If you want the diagonal to split the face of the cube, just do a Modify/Edge/Visible and rerender. Don't forget the AutoEdge feature for complex objects. TedB !^NavFont01F0007MGHHGC76088
#145057From: Aaron WeintraubJan 4, 1995 8:24 PM
> What gets mapped is determined by edge visibility only, as you noticed. > If you want the diagonal to split the face of the cube, just do a > Modify/Edge/Visible and rerender. Don't forget the AutoEdge feature for > complex objects. That's what I would have expected, although it does not work exactly like that. True, if I have a cube with the diagonal hidden, that edge won't be rendered. But this seems to only work on flat square faces, or other coplanar sets of faces. Try this: Create an L-Sphere, not too complicated. Face Map it with a white frame image as I described in my last message, then render. This looks like it does in the editor, a bunch of squares. Now, do Modify/Edge/Invisible on a group of the front edges that you'd be looking at in the render (turn backface on to make it easier to know which ones to click on) and render it. According to what you said, There should be a blank spot where the edges were hidden, but there isn't. Instead, it decides to render all the lines, including diagonals. Why? Aaron
#145110From: Ted BoardmanJan 5, 1995 5:23 AM
Aaron Hmmm, I'll try to experiment with that this afternoon and get back to you. I use a white frame now and then but mostly on architectural (i,e, flat) objects and it works as expected. TedB !^NavFont01F0007MGHHG9ED9CF
#145228From: Aaron WeintraubJan 5, 1995 7:20 PM
Ted, I've experimented with it and it looks like it only works on quadrilateral polygons with exactly one shared edge. It doesn't matter if the faces are coplanar or not. Just to quickly see, though, make a hemisphere, face map it, and look at the bottom (flat) part. There are a bunch of triangles, even when those edges are hidden in the editor. Aaron
#145266From: Ted BoardmanJan 6, 1995 5:08 AM
Geez, Aaron, haven't gotten around to looking at it yet! I'll try to try this afternoon.<g> Thanks for the experimentation, though. Later TedB !^NavFont01F0007MGHHG7945DB
#144942From: Yost GroupJan 4, 1995 9:08 AM
Ted hit it on the nose. – G
#145092From: Zac RymlandJan 5, 1995 12:08 AM
Aaron; Another trick that works to render a Hidden line it create a copy of your objects in the scene which are scale down and away from you camera maybe .1% or so. Then define the new objects as MATT objects under Modify Objects Attributes. Once these new objects are in place you then define your original objects to use wireframe materials. Now all objects behind foreground objects will not render. Hope that does the trick. Zac (AZ-TECH) Berkeley
#145227From: Aaron WeintraubJan 5, 1995 7:20 PM
Zac, Your solution sounds like it might work. However, it would be seriously impractical to have to create copies of every object in my scene, and then scale them down. The scaling would have to be done locally for each object, which would be incredibly time consuming. I suppose a PXP or a TSE script could be written for such a thing, though. Aaron
#145301From: Zac RymlandJan 6, 1995 11:47 AM
Aaron; >>Your solution sounds like it might work<< I have used this technique many times for architectural studies, and it _does_ work quite well. Time consuming yes, but the results are just what you are looking for so it all depends on how desperately you need the effect. Zac (AZ-TECH) Berkeley
#145704From: john hyslepJan 9, 1995 7:00 AM
Aaron: I just went through a similar series of experiments and trials to get hidden lines renderred on 3DS. After trying most of what has been discussed in this thread, I found the FASTEST way to do it is to just take the model into AutoCAD and use the hide command. Not very elegant, but it got the job done ! (with excellant line detail) Good wish-list item. John