Do all render engines only use polygons?

Generic forum to discuss Octane Render, post ideas and suggest improvements.
Forum rules
Please add your OS and Hardware Configuration in your signature, it makes it easier for us to help you analyze problems. Example: Win 7 64 | Geforce GTX680 | i7 3770 | 16GB
enthewhite
Licensed Customer
Posts: 49
Joined: Sat Nov 05, 2011 4:51 pm

Hi everyone. I am wondering if any render engines render nurbs surfaces natively? Or does everything have to be converted to polygons at some point before the render happens?

After using Octane for a while to render product designs from Solidworks and seeing how many polygons it takes in a .obj file to capture all of the details from a nurbs model, I am starting to wonder if any of the other solutions out there are built to work with nurbs models and therefore offer a more efficient way to render the projects that I am doing?
Win 7 65 | Geforce GTX580 | Hex 4.33GHz | 16GB
User avatar
Proupin
Licensed Customer
Posts: 735
Joined: Wed Mar 03, 2010 12:01 am
Location: Barcelona
Contact:

The only one that I know (perhaps there are others) that renders nurbs natively is Renderman for Maya. No need to tesselate, just works with perfect and infinite curvature if that's what your looking for. To get a solidworks nurbs model to maya is probably possible. edit: you can export as .iges and use mayas iges importer
Win 7 64bits / Intel i5 750 @ 2.67Ghz / Geforce GTX 470 / 8GB Ram / 3DS Max 2012 64bits
http://proupinworks.blogspot.com/
User avatar
Reggie
Licensed Customer
Posts: 56
Joined: Thu Mar 22, 2012 7:10 am
Location: Los Angeles

Proupin wrote:The only one that I know (perhaps there are others) that renders nurbs natively is Renderman for Maya. No need to tesselate, just works with perfect and infinite curvature if that's what your looking for. To get a solidworks nurbs model to maya is probably possible. edit: you can export as .iges and use mayas iges importer
Actually, that's not correct. Renderman subdivides Nurbs and Subdivisions into micro polygons at rendertime based on the shading rate. This is why a shading rate of let's say 10 will result in a very coarse Nurbs or subdivision surface. It's just so efficient that it doesn't tesselate the geometry before rendering each pixel like more traditional renderers.
GTX 470 | 16 gigs | AMD 1090T | Win7-x64 | Maya til death!
User avatar
Proupin
Licensed Customer
Posts: 735
Joined: Wed Mar 03, 2010 12:01 am
Location: Barcelona
Contact:

:D what is not correct again?
Win 7 64bits / Intel i5 750 @ 2.67Ghz / Geforce GTX 470 / 8GB Ram / 3DS Max 2012 64bits
http://proupinworks.blogspot.com/
User avatar
Reggie
Licensed Customer
Posts: 56
Joined: Thu Mar 22, 2012 7:10 am
Location: Los Angeles

Proupin wrote::D what is not correct again?
Renderman converts Nurbs and SubDs to polys at rendertime: http://en.wikipedia.org/wiki/Reyes_rendering
Reyes renders curved surfaces, such as those represented by parametric patches, by dividing them into micropolygons, small quadrilaterals each less than one pixel in size. Although many micropolygons are necessary to approximate curved surfaces accurately, they can be processed with simple, parallelizable operations. A Reyes renderer tessellates high-level primitives into micropolygons on demand, dividing each primitive only as finely as necessary to appear smooth in the final image.
GTX 470 | 16 gigs | AMD 1090T | Win7-x64 | Maya til death!
User avatar
Proupin
Licensed Customer
Posts: 735
Joined: Wed Mar 03, 2010 12:01 am
Location: Barcelona
Contact:

Did I say otherwise?
Win 7 64bits / Intel i5 750 @ 2.67Ghz / Geforce GTX 470 / 8GB Ram / 3DS Max 2012 64bits
http://proupinworks.blogspot.com/
User avatar
Reggie
Licensed Customer
Posts: 56
Joined: Thu Mar 22, 2012 7:10 am
Location: Los Angeles

Proupin wrote:Did I say otherwise?
Proupin wrote:The only one that I know (perhaps there are others) that renders nurbs natively is Renderman for Maya. No need to tesselate, just works with perfect and infinite curvature if that's what your looking for. To get a solidworks nurbs model to maya is probably possible. edit: you can export as .iges and use mayas iges importer
Yes, do you have no memory of this? Renderman does NOT render nurbs surfaces at all, it renders everything as polygons. It takes the curved surface information and splits it up into pixel sized polys at rendertime. Renderman will automatically tesselate the geometry at rendertime, on a per pixel or sub-pixel basis, but that does not mean that it renders nurbs surfaces as nurbs surfaces, they are each converted to polygons at rendertime.
GTX 470 | 16 gigs | AMD 1090T | Win7-x64 | Maya til death!
ChrisVis
Licensed Customer
Posts: 243
Joined: Mon May 14, 2012 1:53 am
Location: Germany

Hi guys,

just had a great find, that is a bit related to this topic... seems there will be other solutions out there in the near future?
http://ww.gpucomputing.net/?q=node/12802

By the way, very interesting site with top of the notch science news about gpu rendering!
http://ww.gpucomputing.net/?q=node/2467
C4D R15 - C4DOctane 4.0 | Win7 64 | NVIDIA 417.22 | EVGA GTX 980 Ti SC | EVGA GTX 780 Ti SC |EVGA GTX 780 Ti SC
i7 4930K 6x4.3GHz OC | 64GB | ASUS P9X79-E WS
+ Netstor Turbobox 250A | 2x EVGA GTX 780 Ti SC + 2 x Palit GTX780 Ti 3GB | all watercooled
User avatar
Proupin
Licensed Customer
Posts: 735
Joined: Wed Mar 03, 2010 12:01 am
Location: Barcelona
Contact:

Reggie wrote: Yes, do you have no memory of this? Renderman does NOT render nurbs surfaces at all, it renders everything as polygons. It takes the curved surface information and splits it up into pixel sized polys at rendertime. Renderman will automatically tesselate the geometry at rendertime, on a per pixel or sub-pixel basis, but that does not mean that it renders nurbs surfaces as nurbs surfaces, they are each converted to polygons at rendertime.
lmfao are you for real? So you are saying that, because Renderman uses an internal process such as micro-polygon tesselation for rendering Nurbs, it does NOT render nurbs?? Does anybody care what is Renderman doing besides you giving it a nurbs surface and it giving you pixels as a result? It certainly does not give you an error... on the contrary it looks amazing*.

If you try to render a Nurbs surface, will Renderman do it? YES. Therefore, is Renderman capable of rendering Nurbs surfaces? YES.

Hey, if you have a better candidate, and for whatever reason there exists a renderer that renders "nurbs as nurbs" (whatever that means), then please share with us...

*except if you happen to use third world class shading rate of 50.

PS: Did you know that Octane does NOT render polygons, AT ALL? internally octane converts the scene to voxels, and THAT is what Octane really renders... :D By your logic, Octane does not render polygon geometry.
Win 7 64bits / Intel i5 750 @ 2.67Ghz / Geforce GTX 470 / 8GB Ram / 3DS Max 2012 64bits
http://proupinworks.blogspot.com/
User avatar
matej
Licensed Customer
Posts: 2083
Joined: Fri Jun 25, 2010 7:54 pm
Location: Slovenia

Arent NURBS a mathematically defined "infinite" surface? If yes, then it's not possible to render them without first evaluating them discretely. That would mean they need to be converted to a "finite set", before rendering, be that polygons or voxels or whatever...

(just a thought, I'm no expert, please don't kill me :D )
SW: Octane 3.05 | Linux Mint 18.1 64bit | Blender 2.78 HW: EVGA GTX 1070 | i5 2500K | 16GB RAM Drivers: 375.26
cgmo.net
Post Reply

Return to “General Discussion”