Announcement

Collapse
No announcement yet.

GPU rendering problems

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • GPU rendering problems

    It seems that every day I'll find a problem or another .... very frustrating to be honest.
    I've upgraded my GPU to a GTX 1060 6gb and I'm still having the same problems as with my previous card a GTX 770 with 4Gb of vram.
    Although the performance seems to be better, I still have two main issues:

    1.- Objects with flipped normals that have layered materials, diffuse, reflection etc. render fine with CPU, but will render black with GPU (in this case is a white material, but other materials also show the usual effects of flipped normals becoming darker).
    The 'building light cache' phase displays fine but it becomes black as soon as the rendering phase starts.
    So when I load a project done in version 2 with most materials being in layers, any surface with flipped normals will show up dark if I try to render with GPU. All materials had always 'double-sided' enabled to take care of possible flipped normals but this option is not there anymore now with layered materials.
    The only solution is to recreate the material with the default VRDF format and check 'double-sided' (which is already on by default).

    2.- Textures render with horrible jaggy edges ... even with a newly created VRDF material.

    I've also noticed that if I open a scene, and select GPU, the submenu lists both C++/CPU and my GPU card but only the CPU is checkmarked so I have to checkmark the GPU. In any case, the result is the same whether under the GPU submenu both processors are selected or only one of them (CPU or GPU)

    Let me know if you need a sample scene.
    BTW what happened to the switch in Swarm to remove the local machine from rendering ? It's gone ...

    Click image for larger version  Name:	CPU-GPU.jpg Views:	1 Size:	47.4 KB ID:	1002907

    Using Rhino 5 - 3.60.02
    Vray Nightly June 25, 2018
    Windows 8.1 - 64bit
    Last edited by palosanto; 03-07-2018, 09:31 PM.
    www.marinevisuals.com
    3D Visualization for the Marine Industry

  • #2
    Hi palosanto,

    Originally posted by palosanto View Post
    It seems that every day I'll find a problem or another .... very frustrating to be honest.
    I'm sorry to hear that. We are doing our best to quickly address all the issues that you guys find.
    I also want to thank you for taking the time to report everything in a detailed way.
    This really helps us a lot in improving our product.


    Originally posted by palosanto View Post
    1.- Objects with flipped normals that have layered materials, diffuse, reflection etc. render fine with CPU, but will render black with GPU (in this case is a white material, but other materials also show the usual effects of flipped normals becoming darker).
    The 'building light cache' phase displays fine but it becomes black as soon as the rendering phase starts.
    So when I load a project done in version 2 with most materials being in layers, any surface with flipped normals will show up dark if I try to render with GPU. All materials had always 'double-sided' enabled to take care of possible flipped normals but this option is not there anymore now with layered materials.
    The only solution is to recreate the material with the default VRDF format and check 'double-sided' (which is already on by default).
    There are two things I have to point out here:
    1) The GPU rendering mode in V-Ray is a completely separate rendering engine that uses the same materials, lights, environment, etc.
    Because of that we can't guarantee that every possible scene setup will render exactly the same way on the GPU/CUDA engine.
    On the other hand with every release that we put out the shader and effects support of the GPU engine is getting better and better.
    With that in mind, we always recommend that you start working on your project using the GPU from the very beginning, every time you know you'll be using your graphics card for the final frame rendering.
    Even if you start working on your setup using a computer with no powerful card you can still select the same engine and enable the C++/CPU from the Device Select menu.
    And later, once you switch to a computer with a powerful GPU you'll see exactly(100%) the same result rendered.
    Note: The Light Cache GI prepass is always calculated by the standard V-Ray CPU engine (causing the visual differences between the LC preview and the final raytracing stage)
    2) The Diffuse, Reflection, Refraction layers in the Layered Material are legacy shaders in V-Ray that we still support for backwards compatibility reasons.
    That's why the GPU engine support for them is not perfect.
    I would strongly recommend that you use the VRayBRDF layer instead.
    It lets you build complex materials easily and will also give you optimal rendering performance.
    The GPU support for the options of the V-Ray material is also very good.


    Originally posted by palosanto View Post
    2.- Textures render with horrible jaggy edges ... even with a newly created VRDF material.
    By default the resolution of all scene textures is limited when you switch to the GPU engine.
    All the maps get resized to 512 pixels at render time.
    This option was originally enabled to account for big number of texture maps in a scene rendered on cards with limited memory.

    You can easily disable this behavior by changing the following option:
    Settings > Raytrace(Advanced) > GPU Textures > Resize > /Full-size textures
    Click image for larger version  Name:	GPU_Textures_01.png Views:	1 Size:	24.2 KB ID:	1002915



    Regards,
    Konstantin

    Comment


    • #3
      Hi Konstantin,

      Originally posted by konstantin_chaos View Post
      Hi palosanto,
      I'm sorry to hear that. We are doing our best to quickly address all the issues that you guys find.
      I also want to thank you for taking the time to report everything in a detailed way.
      This really helps us a lot in improving our product.
      I apologize if I sounded too direct, I'm under a tight deadline and it can be sometimes frustrating to encounter these problems ... I know you are working hard and appreciate your great support and detailed explanations.

      Originally posted by konstantin_chaos View Post
      we always recommend that you start working on your project using the GPU from the very beginning, every time you know you'll be using your graphics card for the final frame rendering.
      Even if you start working on your setup using a computer with no powerful card you can still select the same engine and enable the C++/CPU from the Device Select menu..
      Should I still select both devices C++/CPU and GPU when working with a powerful GPU? Is the CPU in this case contributing ? Wouldn't then the CPU possible differences in the results be mixed in the final output?

      Originally posted by konstantin_chaos View Post
      I would strongly recommend that you use the VRayBRDF layer instead.
      I'm systematically recreating all layered materials in VRDF format on every old project that I need to work on. It's time consuming but probably faster that facing the problems.

      Originally posted by konstantin_chaos View Post
      By default the resolution of all scene textures is limited when you switch to the GPU engine.
      All the maps get resized to 512 pixels at render time.
      You can easily disable this behavior by changing the following option:
      Settings > Raytrace(Advanced) > GPU Textures > Resize > /Full-size textures
      Thanks that worked. I'll make this the default from no on.

      Cheers
      Juan
      Last edited by palosanto; 04-07-2018, 05:07 PM.
      www.marinevisuals.com
      3D Visualization for the Marine Industry

      Comment


      • #4
        Hi palosanto,

        When you select C++/CPU together with your GPU from the devices list both devices will be contributing.
        There will be no difference in the pixels rendered by the CPU since it's using the CUDA/GPU engine code in the back.

        As far as the layered materials go:
        With our next major version release we'll automatically migrate all legacy material layers to VRayBRDFs.
        They will still be displayed as 'Diffuse', 'Reflection', ... but in the back we'll use the proper shader.
        This will help the GPU engine in a big way - in both shader support and performance.

        Regards,
        Konstantin

        Comment

        Working...
        X