POV-Ray : Newsgroups : povray.general : NURBS patch? : Re: NURBS patch? Server Time
13 Aug 2024 07:23:31 EDT (-0400)
  Re: NURBS patch?  
From: Nathan Kopp
Date: 9 Dec 1998 14:56:38
Message: <366ED63C.678DD184@Kopp.com>
Jerry Anning wrote:
> 
> BMRT is indeed a true ray tracer.  It does not at any point convert
> NURBS to triangles. Neither does RenderMan.  For that matter, neither
> they nor POV convert Beziers to triangle meshes.  POV subdivides Beziers
> into smaller Bezier patches until they are flat enough to be considered
> rectangles.
> 

I must disagree. (I'm guessing, but it is an educated guess.)  I agree that
BMRT is a true raytracer.  But doing anything with NURBS without converting
them to triangles is very time consuming.  If it did not convert them to
triangles, the render time would make it so nobody would use NURBS with BMRT.
Also, I'd bet that BMRT converts the majority (if not all) of its surfaces into
triangles before rendering.  I know that RenderMan does, since all scanline
renders convert all objects into triangles.

POV can subdivide Beziers on the fly into smaller and smaller beziers until
they are rectangles (the rectangle is rendered as two smooth triangles). 
However, this is 'type 0', which renders quite slowly compared to 'type 1'. 
Type 1 subdivides as a pre-computation step and stores the triangles in a nice,
efficient octree structure.

It should be noted that POV can only subdivide the beziers into sub-patches
because of the nature of the bezier parametric equation.  There is no such
optimization that I know of when dealing with NURBS, especially trimmed NURBS.
Therefore, subdividing NURBS on the fly could end up being VERY slow.

(This is also an answer to Thomas Willhalm's question.)

IMHO, POV does a great job rendering smooth triangles (with the new mesh2
syntax that can be found in UVPov and the SuperPatch), both in memory
efficiency and speed.... so, if we can get a fast pre-processing step, I think
we'd be all set.

-Nathan Kopp


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.