Announcement

Collapse
No announcement yet.

sp3 vector displacement

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

  • sp3 vector displacement

    Is there some more info on how to use vector displacement ? Is there some tool for Max that can output RGB vector displacement maps ? Has anybody using 3D-Coat tried it ?

  • #2
    There is a VRayVectorDisplBake material that allows you to bake maps for vector displacement:

    http://www.spot3d.com/vray/help/150S...cement.htm#ex8

    Best regards,
    Vlado
    I only act like I know everything, Rogers.

    Comment


    • #3
      I'm a bit puzzled here too. No experience at al with normal/vector mapping but it looks a great feature.

      The help files and other info here on the forum is very limited, a small tutorial on how to use this stuff would be nice. The example in the help file http://www.spot3d.com/vray/help/150S...cement.htm#ex8 is good but the important steps to go from the 'complex geometry' to the displacement map are crucial and missing.

      I also though it would be easy to make grass point in random directions, by mixing a black and white noise map with some larger colored noise map. But that doesn't work at all, guess it's not possible to create this kind of maps manually without first modeling some geometry to render as a normal map?

      Kind regards,

      wouter
      Aversis 3D | Download High Quality HDRI Maps | Vray Tutorials | Free Texture Maps

      Comment


      • #4
        Modo is the only program that I know of that actually lets you paint/sculpt vector displacement. That's what it uses for it's default displacement. I'm actually really excited about this because I'm also a Modo user.
        Galen Beals
        Animator/Technical Director
        Portland, Oregon

        Comment


        • #5
          don't quote me but I think 3d coat, and zbrush allow a similar vector displacement.

          Comment


          • #6
            Let me try to explain...
            First off you need two objects. One high res, and one low res.
            Just like in the help file example.
            Very important though, both objects must have the same UV coordinates!

            Put the two objects next to each other (unlike standard normal map baking in Max they don't have to occupy the same space) and apply the VRayVectorDisplBake material to the LOW RES model.
            Next, select your low res mesh and go into the Render to texture dialog. Make sure Projection Mapping is off and mapping coordinates is set to "use existing channel".
            Add a "VRayCompleteMap" to the list and set it's size and file format. (I recommend EXR)
            Now comes the difficult part... you must set the displacement amount in the material to the proper value. This depends entirely on your mesh and there's no perfect value. You can either guess (which I don't recommend) or you can do the following:
            Make sure the VRay Frame Buffer is enabled.
            Hide the other objects and render just the low res model. It'll have some funky coloring. In the VRay Frame Buffer, click on the "View Clamped Colors" button. There will be some white and black areas. (these represent clamped colors) Now increase the displace amount until there's no more clamped colors left.
            If you are having trouble viewing the entire model on a render because of it's complexity you can render it in the Render to Texture dialog instead, but remember, the VRay Frame Buffer will disappear once the render is finished so you must click on the "view clamped colors" button before then.
            To make it easier you can render to a large picture size so you have more time.
            Once you have the displace amount set right (the picture don't have any clamped colors), simply render to texture the "VRayCompleteMap".

            To use it, apply a VRayDisplaceMod modifier to the low res object, place the rendered texture map in the "Texmap" channel, set the Amount to the same value you used in the VRayVectorDisplBake material, and turn on Vector Displacement.

            Oh if you use VrayBitmapFilter to open the texture, you'll have to check the "Flip V" box to get the same result.
            Last edited by Shimakaze; 09-03-2009, 03:16 AM.

            Comment


            • #7
              Originally posted by flipside View Post
              I also though it would be easy to make grass point in random directions, by mixing a black and white noise map with some larger colored noise map. But that doesn't work at all, guess it's not possible to create this kind of maps manually without first modeling some geometry to render as a normal map?
              Grass would look like a blue and black noise, with VERY slight R/G overlayed noise to bend the strands around.
              Try with different mix amounts, and you'll see.
              I would say Shim nailed the process quite exactly, too.
              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


              • #8
                Shimakaze,

                Do you have to make a connection between the high res model and low res at some point?
                Tarik

                Comment


                • #9
                  I built a 50cmx50cm land portion and modeled 3d grass strands. Actually I made 19 different strands and proxied them and scattered on a 50x50cm plane.
                  Now I want to create a vector displacement map and use it as tilable map on a bigger surface.
                  Will I follow the above procedure but how?

                  Before read this thread, I tried this:
                  I rendered this meshes from top view with a normal pass. and placed this normal map in vraydisplacement modifer as vector displacement. but I couldnot get a successful result.

                  Comment


                  • #10
                    Originally posted by giraffe View Post
                    Before read this thread, I tried this:
                    I rendered this meshes from top view with a normal pass. and placed this normal map in vraydisplacement modifer as vector displacement. but I couldnot get a successful result.
                    This will not work; vector displacement maps are different from normal maps. For a start, normal maps store, well, normals, which are all unit vectors (with length 1.0). Obviously, you don't want all points on the surface displaced by 1 unit always.

                    Best regards,
                    Vlado
                    I only act like I know everything, Rogers.

                    Comment


                    • #11
                      mmm trying to understand.
                      so then how can I process one vector displacement map out of my 3d grass geometry?

                      Comment


                      • #12
                        Getting vector displacement map from grass is pretty complex thing to do. Its not really possible without heavy c++ coding... Well I guess maxscript would be sufficient.
                        http://www.ylilammi.com/

                        Comment


                        • #13
                          Originally posted by giraffe View Post
                          mmm trying to understand.
                          so then how can I process one vector displacement map out of my 3d grass geometry?
                          It's not that difficult:

                          (1) Make a plane with e.g. 100x100 subdivisions and e.g. 100 x 100 units; make sure the plane has UVW coordinates;
                          (2) Model your grass out of that (e.g. by pulling out vertices with an Edit Mesh modifier);
                          (3) Make another plane with the same size (100x100 units), but do not modify it; make sure it has UVW coordinates; the actual subdivisions of this plane do not matter (since it's flat anyways);
                          (4) Assign a VRayVectorDisplBake material to the second (flat) plane;
                          (5) In the Material Editor, select the VRayVectorDisplBake material, click on the "Target geometry" button and select the first plane (with the grass);
                          (6) Set the "Displacement amount" to be a little more than the height of the grass;
                          (7) Set the "Displacement shift" to 0.0f (since the grass only goes up);
                          (8 ) Select the second (flat) plane, open the "Render To Texture" dialog;
                          (9) Add a VRayCompleteMap element, and select an .exr output file for it;
                          (10) Perform the texture baking on the second plane;
                          (11) Now you have your vector displacement map.

                          Best regards,
                          Vlado
                          I only act like I know everything, Rogers.

                          Comment


                          • #14
                            Can you load in the vector map as a bitmap?
                            Tarik

                            Comment


                            • #15
                              Originally posted by tarik2d View Post
                              Shimakaze,

                              Do you have to make a connection between the high res model and low res at some point?
                              That's what the "Target geometry" button in the material is for. Click that and select the high res model.

                              Comment

                              Working...
                              X