Adaptive Subdivision?

Does Iray have an automatic adaptive subdivision feature? As it is now, I can decrease or increase the subdivisions manually for figures relative to how far they are from the camera, but if I change to a different camera/angle, I have to do it all over again. Is there a feature in Iray (like in Cycles, for instance) that does this automatically? If not, is there maybe a script that exists?

Comments

  • bbaluchonbbaluchon Posts: 34

    I'm also looking for this kind of feature myself, but for retopology purposes, to achieve better results with displacement mapping and add more geometry where it's needed (not all the figure at once, wich is unmanageable for many systems, including mine, after subdivision 3-4).

  • Syrus_DanteSyrus_Dante Posts: 983

    Good idea, and no I think there is nothing like this so far.

    I had thought of this before but also for the View SubD level in the viewport to update dynamicly. This could become a commercial script, someone could post a request in the Product Suggestions.

    Two scripts with example code that maybe someone can combine:

    Beside of that there is also an Add Level of Detail action where you can load a different geometry for the same figure/prop - I tried it once but it didnt work. I'm not shure how this would be dynamic propably not.

    To measure the distance I think we would need to define some Camera as the rendering perspective, then measure the distances to every item in the scene and set the Sub-D level acordingly.

    @ bbaluchon

    The detail of displacement mapping is based upon the resolution of the texture map not the density of the geometry.

  • bbaluchonbbaluchon Posts: 34
    @ bbaluchon

    The detail of displacement mapping is based upon the resolution of the texture map not the density of the geometry.

    Thanks for the info, do you know if that apply to all the maps, or only for the Displacement one ? I.e. if I simply double the resolution of the displacement texture, the details will be more accurate for the tesselation without troubles ?

    What is the purpose and effect of the Subdivision parameter dial for the displacement, in that case ? It's not clear about how this parameter is connected to the SubD level of the base mesh, and to the texture size. Increasing the displacement SubD doesnt look to have any effect for detailing, if the base mesh isn't subdivided at the same level... I'm confused about relationship betweent those two similar dials...

    Anyway if a simple texture resolution increase works, it could be the perfect answer to my problems about that, I'll give it a try ;)

  • LeanaLeana Posts: 11,842
    edited May 2018
    The detail of displacement mapping is based upon the resolution of the texture map not the density of the geometry.

    Actually in Iray displacement is vertex based, so you do need lots of vertices if you want to have a lot of details.

    Post edited by Leana on
  • bbaluchonbbaluchon Posts: 34
    edited May 2018

    You're right Leana, I tried with Iray render, and there is no other option than increasing the global poly count to enhance displacement details... sadly.

    Hopefully this technique will be improved in a future software iteration... maybe the 4.11 ?

    Post edited by bbaluchon on
  • Syrus_DanteSyrus_Dante Posts: 983
    Leana said:
    The detail of displacement mapping is based upon the resolution of the texture map not the density of the geometry.

    Actually in Iray displacement is vertex based, so you do need lots of vertices if you want to have a lot of details.

    Realy? Seems I'm not up to date with how iRay handles displacement maps, sorry I've never setup an iray shader. I just read someone saied better use normal maps than displacement in iRay.

    Sounds a bit inefficient to me but hey thats the point why we where thinking of an adaptive subdivision or dynamic lod in the viewport in the first place.

  • mephoriamephoria Posts: 120

    @Syrus_Dante: Normal/bump maps definitely use fewer resources than displacement maps, in the typical case, since they don't require you to create new geometry on-the-fly via subdivision. This makes them really great for the things that they are good at. In particular, they work well whatever distance you are at. However, they simply simulate changing the height of the surface, which is just fine when you are looking at it straight on, but fails badly when you are looking at the silhouette. For silhouettes, you simply need more geometry, either by using a more detailed model or by paying the non-trivial cost of sub-dividing the model before applying displacement. IMO, this is true even if the objects are distant from the camera: if the details are subtle enough that they don't show up from a distance, then they probably could have been handled just as well through normal/bump maps.

     

  • PadonePadone Posts: 3,804

    Just for the sake fo completeness.

    3Delight does have adaptive subdivision. That is, the displacement resolution depends on the displacement map and the needed geometry is created accordingly.

    Iray doesn't have adaptive subdivision. You can setup a subdivision level for the displacement map to increase the number of polygons in the geometry. This is different from the figure sds because the subdivision for the displacement map is not smoothed. This also means that it is faster.

    Cycles has adaptive subdivision as an experimental feature. As far as I can tell it works fine for animation playback and rendering. But it has issues otherwise. So backup your scenes before using it.

Sign In or Register to comment.