Slow rendering of NURBS in polygon mode!

Slow rendering of NURBS in polygon mode!

Post by Himanshu Goh » Thu, 05 Mar 1998 04:00:00



NOTE: Please remove XXX from my email address to reply directly!

System: SGI O2, IRIX 6.3, OpenGL 1.0 (w/extensions), Feb '98 Patches.

I'm rendering smooth shaded NURBS surfaces to the screen, which
can get pretty slow when the object gets a bit large, such as
a 100x100 bicubic surface.  I allow the user to rotate, pan
and zoom the object, which is when the response is slow.

So I thought that setting the shading to GL_FLAT and changing
the GLU_DISPLAY_MODE gluNurbsProperty to GLU_OUTLINE_POLYGON would
improve the rendering time.  But except in the case when I set the
display mode to GLU_OUTLINE_PATCH, all others take the same time
to render as shown by this table:

                          gluNurbsProperty
GL_LIGHTING  glShadeModel GLU_DISPLAY_MODE     Rendering speed
-----------  ------------ -------------------- ---------------
Enabled      GL_SMOOTH    GLU_FILL             slow }
Enabled      GL_FLAT      GLU_FILL             slow } all same
Disabled     GL_FLAT      GLU_OUTLINE_POLYGON  slow }   speed
Disabled     GL_FLAT      GLU_OUTLINE_PATCH    fast!

I guess in the first three cases the tesselation takes time,
but shouldn't not shading the object in the outline polygon mode
save a significant amount of time?  Why am I not seeing that
effect?

NOTE: Please remove XXX from my email address to reply directly!

--

WEB URL: http://www.csee.usf.edu/~gohel/       | it's a wonderful
Geometric Modeling and Graphics Research Group | world.
U of South Florida, Tampa, FL. USA.            |  -- Tony Bennett

 
 
 

Slow rendering of NURBS in polygon mode!

Post by Dave Shreine » Fri, 06 Mar 1998 04:00:00


Hi,

   Given what you've said, your application is what's called "Transform
Limited", which means the bottleneck in the OpenGL rendering pipeline
is in transforming and projecting the 3D geometric primitives into
2D screen space.

   You're probably right in the tesselation of the nurbs into triangles
is the limiting factor.  Are you tesselating in object space, or screen
space?  The reason that the GLU_OUTLINE_PATCH   mode is faster is that
the GLU nurbs code isnt' having to really think, its just repeating
what you sent to it ( the patch definitons ).

   You might take a look at OpenGL Optimizer, which has much better
nurbs processing tools than the GLU.

Thanx,
Dave

  ---------------------------------------------------------------------


   Silicon Graphics, Inc.                            (650) 933-4899

 
 
 

Slow rendering of NURBS in polygon mode!

Post by Himanshu Goh » Fri, 06 Mar 1998 04:00:00


NOTE: Please remove XXX from my email address to reply directy!


>   You're probably right in the tesselation of the nurbs into triangles
>is the limiting factor.  Are you tesselating in object space, or screen
>space?

Actually I'm not doing the tesselation myself...I let OpenGL do it for me.

Quote:>  The reason that the GLU_OUTLINE_PATCH     mode is faster is that
>the GLU nurbs code isnt' having to really think, its just repeating
>what you sent to it ( the patch definitons ).

After I posted the message I ran several data sets through my program,
and I found that even the GLU_OUTLINE_PATCH method results in slow
rendering when the object's shape is complicated enough.  For example,
a simple 4x4 bicubic patch will result in only the outlines being
rendered.  But when I use my warping techniques to introduce modifications
in the surface, that warped surface now shows undulations which
slow down the GLU_OUTLINE_PATCH output to almost the same as the
other methods.

Quote:>   You might take a look at OpenGL Optimizer, which has much better
>nurbs processing tools than the GLU.

So Then it looks like Optimizer might be the way to go.  When I looked
at it last year, I thought it was overkill for my work.  The second
factor was that it was not available for the Sun...is it now?

NOTE: Please remove XXX from my email address to reply directy!

--

Geometric Modeling/Graphics Research Group, U of South Florida, Tampa,FL
Research Group URL: http://www.csee.usf.edu/graphics/

 
 
 

1. Rendering concave polygons in wireframe mode

Hello all,

I'm working on a 3D editor that loads geometry containing concave polygons.
When I try to render them in wireframe mode (using the default method of the
viewer) the polygons are rendered decomposed into convex polygons, i.e.,
triangles.
Does anybody know a way to avoid this?

Thanks in advance.

David Snchez Crespillo
Balearic Islands University - Spain

2. Some help on 3D animation schools

3. Render directly NURBS at render time ?

4. OpenGL to GL

5. NURBS awfully slow

6. Frustum culling, special cases

7. Help! (EXTREME) Slow down with NURBS

8. FS: Wacom ArtZ II Tablet, 12x12"

9. Is fullscreen mode slower???

10. why slow in REF mode ?

11. Illustrator 9 Slow Slow Slow

12. slow, slow, slow

13. canvas->pixel is slow slow slow...