Hi all,
Comparing scenes built only with polygons with renders of same one built with NURBS I find rendering NURBS in PBR much slower. I did same tests with pure raytrace and standard micropoly mode and every time NURBS rendered fairly quick. Is there any particular thing which may produce this slowdown?
I can imagine the difference in speed between polygons and NURBS may come from conversion time NURBS have to be turn to polys. But maybe the problem lays in the algorithm used in PBR, or use of rational surfaces or simply it's a bug… Could somebody share his toughs about it. Thanks in advance.
All the best
kuba
Rendering NURBS in PBR slow
4618 7 3- kuba
- Member
- 345 posts
- Joined:
- Offline
- symek
- Member
- 1390 posts
- Joined: July 2005
- Offline
kuba
Hi all,
Comparing scenes built only with polygons with renders of same one built with NURBS I find rendering NURBS in PBR much slower. I did same tests with pure raytrace and standard micropoly mode and every time NURBS rendered fairly quick. Is there any particular thing which may produce this slowdown?
I can imagine the difference in speed between polygons and NURBS may come from conversion time NURBS have to be turn to polys. But maybe the problem lays in the algorithm used in PBR, or use of rational surfaces or simply it's a bug… Could somebody share his toughs about it. Thanks in advance.
All the best
kuba
Hey Kuba,
I'm sure someone from SESI will give you relevant information soon, but as a general rule, you can expect that parametric surfaces render slower specially in raytrace/pathtrace mode (also in micropoly, but this is far less noticeable). There are lots of issues here which I possible don't recognize, but finding ray intersection for Nurbs is much more computational expensive, then for polygon for example. This stay true for metaball primitive also, which, believe me, you wouldn't like to trace.
- anamous
- Member
- 186 posts
- Joined: Jan. 2006
- Offline
In addition to what SYmek said, if you are in desperate need of rendering NURBS or subdivs in PBR or raytracing, and you have some extra memory to burn, try adding the rendering parameter “vm_raypredice” (it's called “Ray Predicing”) to the NURBS object, and set it to “Full Predicing”.
This will cost you some time before the rendering starts, and extra memory, but depending on your case may well be worth the hassle since it will normally accelerate raytracing of parametric surfaces immensely.
Cheers,
Abdelkareem
This will cost you some time before the rendering starts, and extra memory, but depending on your case may well be worth the hassle since it will normally accelerate raytracing of parametric surfaces immensely.
Cheers,
Abdelkareem
- kuba
- Member
- 345 posts
- Joined:
- Offline
- pbowmar
- Member
- 7025 posts
- Joined: July 2005
- Offline
You can also set the raytraced level of detail to .1 or .2, and in most cases it will appear the same but render many, many times faster.
basically a raytracer has to turn the nurbs to polygons before it renders, and the default is a very high level of detail, which is usually not needed.
Cheers,
peter B
basically a raytracer has to turn the nurbs to polygons before it renders, and the default is a very high level of detail, which is usually not needed.
Cheers,
peter B
- kuba
- Member
- 345 posts
- Joined:
- Offline
- pbowmar
- Member
- 7025 posts
- Joined: July 2005
- Offline
- kuba
- Member
- 345 posts
- Joined:
- Offline
-
- Quick Links