Announcement

Collapse
No announcement yet.

vray displacement question

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

  • vray displacement question

    Hello community,

    I really havent been able to find out an exact workflow for vray displacement. This is the reason I ask for your help

    What I would like to achieve is the following.

    -Export a greyscale map from some GIS application as for instance png or tga or tiff
    -Use this greyscale map as a texmap to generate a terrain or landscape

    Since I have been doing a lot of trial and error without expected results I hope to find an answer to the following questions

    -Which format is the preferable format to use as a texmap and which color depth to use ? How's the color space defined, which gamma to use as output ?
    -In my logic I would say that completely black in this map in principle corresponds with 0 while completely white corresponds with the maximum height value, which is defined by maxheight-minheight. If we want the minimumvalue=completely black to be negative we use the shift parameter.
    -We have terrains that are pretty large (several km in meters) and very large textures as texmap
    -We havent been able to find a predictive workflow.
    -Can anyone help me out here ?

    Thank you very much

    Fritzy


  • #2
    You can generate such a terrain by using the VRayDisplacementMod, set to 2D mapping (landscape) on a plane object (mapped with a UVW modifier) and plugging in a greyscale heightmap in its 'Texmap' slot.

    - You can plug in any texture that can be imported in 3ds max.
    For the highest quality, you can use a 32-bit EXR, which has the benefit of holding negative values, hence removing the need to shift the displacement; If however, low disk space usage and memory utilization are a priority, it would be best to use other file formats, in accordance to your specifications. For consistent results between the map-generating software and the displacement output, it would be best to use maps in linear space, so as not to have any color modifications baked into the texture. (note that some file formats automatically bake the gamma into the texture; i.e. jpg)
    - Yes, this is how the map is read. Note that the shift value is just a constant which will be added to the displacement map values (as a result, offsetting the displacement).
    - There shouldn't be issues even with heavier textures, however, larger textures do utilize more memory.


    I've attached a simple example of a landscape, by using the above-mentioned method. The heightmap is generated by free sources on the internet.
    Aleksandar Hadzhiev | chaos.com
    Chaos Support Representative | contact us

    Comment


    • #3
      Adding to what the excellent Aleksandar posted:

      *) Keep the displacement settings at their defaults (ie. 3d, in screen space), and you will get a very gentle budgeting of the displaced mesh' triangles.
      In other words, there will be more triangles up close, and fewer farther away and outside of the view frustum, based on the edge length specified (in pixels.).
      V-Ray will still do a competent job of hiding detail transitioning, and when the details are too low frequency, it will complement them with a "fake" bump in the form of an automatic normal map.

      *) If you are displacing very large landscapes, you may still want to disable "static geometry" (at the very bottom of the modifier), and set a dynamic memory budget (render settings -> Settings tab -> System rollout) other than 0, so that you won't risk swapping to disk, if at the expense of some render speed.

      *) 16 bpc images and lower will often produce artifacts, and as such are best avoided as a priority: in other words, if 32bit images are big, buy more hard drives, don't convert them down to 16 bpc (those too can hold negative values, but the lesser precision will often hurt irreparably.).

      *) If you want a displacement map to displace around the original surface level, set the shift to negative half the Amount (f.e. -0.5/1.0; -1.0/2.0). This will ensure a 0-1 range map will displace equally out and in compared to the original surface's normal.
      Leaving shift at 0.0 will do as you said, and only displace the positive values out for a 0-1 ranged image.
      Negative values in the displacement map will still be pushed inwards.

      *) last but not least, our docs team has been doing a stunning job with the documentation. Have a read if you haven't checked it in a while!
      Last edited by ^Lele^; 26-06-2019, 06:26 PM.
      Lele
      Trouble Stirrer in RnD @ Chaos
      ----------------------
      emanuele.lecchi@chaos.com

      Disclaimer:
      The views and opinions expressed here are my own and do not represent those of Chaos Group, unless otherwise stated.

      Comment


      • #4
        Hi, I have a few questions. Can anyone tell me the specific workflow in Maya? I have the vray displacement assigned to a nurbs plane, a maya file node with my image in the Displacement mat. slot and have added the vray Displacement control att and set it to 2D Displacement... not sure what im missing.

        I did this long ago in MR with 16bit images.. which brings me to my second question, how to convert my sdts data to 32bit images, i had used pullSDTS but it will only export 16bit


        Maui, Hawaii (where i live)
        Attached Files
        Last edited by plsthatspls; 29-02-2020, 08:59 PM.

        Comment


        • #5
          Originally posted by plsthatspls View Post
          Hi, I have a few questions. Can anyone tell me the specific workflow in Maya? I have the vray displacement assigned to a nurbs plane, a maya file node with my image in the Displacement mat. slot and have added the vray Displacement control att and set it to 2D Displacement... not sure what im missing.

          I did this long ago in MR with 16bit images.. which brings me to my second question, how to convert my sdts data to 32bit images, i had used pullSDTS but it will only export 16bit


          Maui, Hawaii (where i live)
          Displacement on NURBS geometry is not supported, use polygon geometry instead. Otherwise, the workflow is correct.
          Regarding your other question, maybe use another similar third-party application.
          Aleksandar Hadzhiev | chaos.com
          Chaos Support Representative | contact us

          Comment


          • #6
            Originally posted by plsthatspls View Post
            I did this long ago in MR with 16bit images.. which brings me to my second question, how to convert my sdts data to 32bit images, i had used pullSDTS but it will only export 16bit
            If the data is originally in 16 bit, promoting bitness will do nothing at all to it, besides make the file larger on disk and in RAM.
            You would need to also dither the detail so to get rid of the banding (i assume it's what prompted you to try and convert to 32bpc.), which isn't trivial when it comes to displacement.
            Lele
            Trouble Stirrer in RnD @ Chaos
            ----------------------
            emanuele.lecchi@chaos.com

            Disclaimer:
            The views and opinions expressed here are my own and do not represent those of Chaos Group, unless otherwise stated.

            Comment

            Working...
            X