Jump to content

mantra basics


Recommended Posts

hi,

again a very basic question ... please be patient ...

i dont really understand the link between normals and rendering ....

i` m not getting accurate results rendering polyobjects ... the overall shading behaves completly strange

for example

a polymesh-cube with 4-4-4 faces .... lit with one arealight and raytraced shadows ... mantra set to MPR as default ... geocontainer - rendertab - automatically Compute normals and a standard surface attached to it ....

result is attached

thx

HT

post-4387-1232414157_thumb.jpg

Link to comment
Share on other sites

If there are no point normals on your geometry and the adjacent polygon faces are sharing points then Mantra will render the edge with smoothly interpolated surface normals. Mantra will build the surface normals for you at render time.

If point or vertex normals are present, then Mantra will use those (smoothly interpolated across the polygon faces) to light/shade your surface.

If you un-share the edges with say a Facet SOP set to cusp polygons with an angle of say 20 degrees, then the edges of your cube will render sharply.

You can also use the PolyBevel SOP to add sharp bevels to your geometry to get your edges to render nicely without the razor sharp edges you get by either unsharing the points and/or generating unique normals at those points.

Another way to get sharper edges is to use a SubDivide SOP and crank up the crease weights enabling the "Override Crease Weight Attribute" and "Generate Resulting Creases" and the "Mantra-compatible Subdivision" toggles. Next on that object, set it to render as a SubDivision Surface. Mantra will then render the surface using the creaseweight attribute on the edges to render sharper edges.

Hope that helps.

Link to comment
Share on other sites

If there are no point normals on your geometry and the adjacent polygon faces are sharing points then Mantra will render the edge with smoothly interpolated surface normals. Mantra will build the surface normals for you at render time.

If point or vertex normals are present, then Mantra will use those (smoothly interpolated across the polygon faces) to light/shade your surface.

If you un-share the edges with say a Facet SOP set to cusp polygons with an angle of say 20 degrees, then the edges of your cube will render sharply.

You can also use the PolyBevel SOP to add sharp bevels to your geometry to get your edges to render nicely without the razor sharp edges you get by either unsharing the points and/or generating unique normals at those points.

Another way to get sharper edges is to use a SubDivide SOP and crank up the crease weights enabling the "Override Crease Weight Attribute" and "Generate Resulting Creases" and the "Mantra-compatible Subdivision" toggles. Next on that object, set it to render as a SubDivision Surface. Mantra will then render the surface using the creaseweight attribute on the edges to render sharper edges.

Hope that helps.

hi,

thx a lot ... i ll try to follow but your description sounds like a workaround to me :unsure: ... i come from an cinema4d run'n gun environment so such a renderingbehavour is completly new.

do other renderengines handle the renderprocess in a similar way?

i don`t want to see the tessalation of my polycube...i want a smooth shaded surface without cracks.... propper highlights and reflection...

is mantra commonly used for polygon object rendering ?

thx

Edited by hatrick
Link to comment
Share on other sites

ok i ve tried the different methods and for simple use i think it works with the facetnode...

but in case of deformation and animation this would probobly become a problem....?

Maybe you could give me a little more explanation about that issue...

for example how would you go for rendering an animated, very lowpoly model which should have sharp edges

and a propper look in case of reflections highlights and oberall shading.

thx

Link to comment
Share on other sites

omg,i m not getting through this ....

you say mantra interpolates when points are shared...i can`t get the logic behind this....

when i use the facet node to turn off pointsharing ... how i can do propper objectdeformaion ore animaion afterwards ?

Is there no simple way to turn off this pointsharing - interpolation in mantra ...

even with the bevelmethod i would be an enormous ammount of work to handle more complex geo.

please guys help me out ...

post-4387-1232470332_thumb.jpg

post-4387-1232470342_thumb.jpg

Link to comment
Share on other sites

omg,i m not getting through this ....

you say mantra interpolates when points are shared...i can`t get the logic behind this....

when i use the facet node to turn off pointsharing ... how i can do propper objectdeformaion ore animaion afterwards ?

Is there no simple way to turn off this pointsharing - interpolation in mantra ...

even with the bevelmethod i would be an enormous ammount of work to handle more complex geo.

please guys help me out ...

Mantra interpolates Normals when points are shared so that it's possible to make shapes shade smoothly while being made out of planar polygons... otherwise a poly sphere would always look faceted. (http://en.wikipedia.org/wiki/Shading)

As oldskool said; Your solution is to use a Facet SOP and the Cusping capabilities to unshare the points ("unique" them) before it goes to Mantra. Note that you can only unique points on Polygon geometry; Meshes, NURBS etc, (m x n patches) have their connectivity intrinsically defined by definition.

PS. Also, FYI, a Box SOP has the ability to turn of Consolidated Corner Points - essentially doing the same unsharing of points.

PPS. There are a lot of terms for this: consolidated = shared = fused, unshared = unique. Look at the Fuse SOP and Facet SOP.

Link to comment
Share on other sites

To add to Jason's and old_school's good suggestions...

*hatrick: your description sounds like a workaround to me

How so?

*hatrick: is mantra commonly used for polygon object rendering ?

Yes.

*hatrick: do other renderengines handle the renderprocess in a similar way?

Many. Renderman included.

*hatrick: i think it works with the facetnode...but in case of deformation and animation this would probobly become a problem....?

No.

hatrick: or example how would you go for rendering an animated, very lowpoly model which should have sharp edges and a propper look in case of reflections highlights and oberall shading.

Here's an extreme low-poly cube rendered as subdiv surface which satisfies those requirements, even under extreme deformation.

subdivcube.hip

post-148-1232476540_thumb.jpg post-148-1232476545_thumb.jpg

HTH.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...