Announcement

Collapse
No announcement yet.

Shave and render layers - help!

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

  • Shave and render layers - help!

    I'm noting that Shave & a Haircut often has problems with render layers in combination with V-Ray. Specifically, the hair stops rendering at some point. It renders fine in both Maya software, and in Mental Ray, but not in Vray. I have not been able to track down exactly where it is breaking (otherwise I might know how to solve it), but I am noting that it does seem to be quite "fragile" and seems to inevitably break in a scene with render layers sooner or later (maybe the very act of switching between render layers is what breaks it?). I did make sure that shave is listed in the V-Ray MEL/Python callbacks which is often a culprit when Shave stops rendering.

    Does anyone have any insights into how to fix this?

  • #2
    It would be best to let Joe Alter know about this; I don't think there is much we can do on our end unfortunately.

    Best regards,
    Vlado
    Last edited by vlado; 29-10-2011, 10:51 AM.
    I only act like I know everything, Rogers.

    Comment


    • #3
      We are seeing stuff like that sometimes too...in our case it mostly does the trick if i just re-reference our fur-characters into the scene and re-apply the pointcache...then the fur is back .... shave is really strange! looking forward for YETI from there: http://peregrinelabs.com/yeti/ It's time for some competition....
      OLIVER MARKOWSKI - Head of 3D at RISE | Visual Effects Studios

      Comment


      • #4
        Ultra,
        Thanks for that! I was unaware of Yeti. Totally agree that it would be great to have choices when it comes to fur/hair. The big plus point with Shave is the grooming capability (and the down is the lack of ability to work with render layers and render passes). I was not aware of anything else within Maya that even came close, but Yeti looks very promising in that regard. I did not see any renders there on the Yeti site however, which seemed a bit odd. Have you seen any?

        Comment


        • #5
          Originally posted by sharktacos View Post
          I did not see any renders there on the Yeti site however, which seemed a bit odd. Have you seen any?
          I haven't seen renders, too. It will also take a while for them to make Yeti ready for Vray. I think it is not really rocket science to do a hairshader so i think rendering will be easy as soon as they managed to get the hairPrims/Geometry to vray. But we will see....
          OLIVER MARKOWSKI - Head of 3D at RISE | Visual Effects Studios

          Comment


          • #6
            well at present i can render shave with render layers also its a referenced shave node all together so that presented some problems upfront but I believe I was able to solve it.
            Since we build render layers through scripts we do not assign objects via regular render layer options. I found that I had to add the following commands to make shave render:

            shaveVraySetRenderCallbacks;
            evalEcho shaveSynchToTextures;
            Dmitry Vinnik
            Silhouette Images Inc.
            ShowReel:
            https://www.youtube.com/watch?v=qxSJlvSwAhA
            https://www.linkedin.com/in/dmitry-v...-identity-name

            Comment


            • #7
              Ok...just to make it clear...shave also works with renderlayers here, but sometimes it completly vansihes out of the scene...it does not render anymore...

              some other questions i have:
              1. Do shader overrides work at your places? like just rendering the hair with a surface shader?
              2. Where do you set shave hair primary visible off? Seems i am too blind to see

              cheerio
              Oli
              OLIVER MARKOWSKI - Head of 3D at RISE | Visual Effects Studios

              Comment


              • #8
                hmm it has never vanished for me. This looks more like a user error then a shave related problem, thats not to say shave is problem free. Here are some answers:

                1. Do shader overrides work at your places? like just rendering the hair with a surface shader?

                No shader overrides will not work unless you are using shave specific mental ray vertex shader, but even then I don't guarantee any results. If you wish to render shave hair with a texture override you can put a blend node into color of the shave and set its ambient amount to 1, which will make it purely self illuminated in effect making it as if it has a surface shader.

                2. Where do you set shave hair primary visible off? Seems i am too blind to see

                I don't think it works this way. There is an option to generate a shadow matte from shave globals. But I don't think it works with vray.
                Dmitry Vinnik
                Silhouette Images Inc.
                ShowReel:
                https://www.youtube.com/watch?v=qxSJlvSwAhA
                https://www.linkedin.com/in/dmitry-v...-identity-name

                Comment


                • #9
                  Originally posted by Morbid Angel View Post
                  2. Where do you set shave hair primary visible off? Seems i am too blind to see
                  There are two places (at least) where you can turn off the hair. One is the "hide all hair" checkbox located in the Shave menu. That will turn off all hair globally. The other is the "active" checkbox on the Shave hairShape in the attribute editor. This will locally turn off that particular hair description.

                  The global's "hide hair" does not work in Vray at all. This is easy to replicate:
                  1. make a sphere
                  2. attach hair
                  3. render in vray -- hair will be there
                  4. click "hide" in Shave menu
                  5. render in vray -- Maya hangs.
                  This works fine in Maya software and mental ray. Just not in Vray.

                  The "active" checkbox works in Vray in the Masterlayer. However it breaks in a render layer. Here are the steps to replicate:
                  1. make a sphere
                  2. attach hair
                  3. render in vray -- hair will be there
                  4. put everything into a render layer
                  5. render in vray -- hair will still be there
                  6. apply a layer override on the "active" switch
                  7. render in vray -- Maya hangs.
                  Again, this works fine in Maya software and mental ray. Just not in Vray.

                  What I would like to do is remove hair from the occlussion pass, since this is a big hit on render times. The workaround I found is to have the hair in the master layer and do all my vray passes (render elements) there, except occlusion. Then make a render layer where I render occlussion in mental ray with the active switch off for the hair. This works but is somwhat unstable. Unfortunatly the error seems sort of random, but bassically the hair at some point just stops rendering. Not sure why.

                  Comment


                  • #10
                    this is interesting but unnecessary. What we do here to generate many custom render layers without the hair in them is a small trick but it seems to work. We create a control node that controls all hair nodes in maya. In that node there are many attributes which drive global as well as per node attributes of shave nodes (for ease of use and scripting). What we do to disable hair is a small operation where you create a boolean attribute (on/off switch) call it enable shave hair. After that you connect that to a multiply/divide node where in input X1 you plug your switch and in input X2 you plug in your hair count. Then you connect the output X of that mul/div node to the hair count of your shave node. When you switch off the hair in the control node the hair count value becomes 0, and no hair is rendered, and maya does not hang.

                    Hope that helps.
                    Dmitry Vinnik
                    Silhouette Images Inc.
                    ShowReel:
                    https://www.youtube.com/watch?v=qxSJlvSwAhA
                    https://www.linkedin.com/in/dmitry-v...-identity-name

                    Comment


                    • #11
                      Originally posted by sharktacos View Post
                      There are two places (at least) where you can turn off the hair. One is the "hide all hair" checkbox located in the Shave menu. That will turn off all hair globally. The other is the "active" checkbox on the Shave hairShape in the attribute editor. This will locally turn off that particular hair description.
                      But both toggles will remove the hair from e.g. a reflection...this is not what i was looking for...but anyway...this is your thread...i don't want to hijack it
                      OLIVER MARKOWSKI - Head of 3D at RISE | Visual Effects Studios

                      Comment


                      • #12
                        Originally posted by ultrasonic View Post
                        But both toggles will remove the hair from e.g. a reflection...this is not what i was looking for...but anyway...this is your thread...i don't want to hijack it
                        Feel free to "hijack." I think that is an interesting question that would be instructive to explore. You can (as I'm sure you know) make a reflection pass which will include the hair reflections. So perhaps you could elaborate a bit on what the difficulty is that you are trying to address.
                        Last edited by sharktacos; 31-10-2011, 03:46 PM.

                        Comment


                        • #13
                          Originally posted by Morbid Angel View Post
                          this is interesting but unnecessary. What we do here to generate many custom render layers without the hair in them is a small trick but it seems to work. We create a control node that controls all hair nodes in maya. In that node there are many attributes which drive global as well as per node attributes of shave nodes (for ease of use and scripting). What we do to disable hair is a small operation where you create a boolean attribute (on/off switch) call it enable shave hair. After that you connect that to a multiply/divide node where in input X1 you plug your switch and in input X2 you plug in your hair count. Then you connect the output X of that mul/div node to the hair count of your shave node. When you switch off the hair in the control node the hair count value becomes 0, and no hair is rendered, and maya does not hang.

                          Hope that helps.
                          Interesting, thanks. So a non-scripted version of this would be to put a layer override on the hair count, setting it to zero. I tried this and it seems to work fine.

                          Comment


                          • #14
                            Originally posted by sharktacos View Post
                            You can (as I'm sure you know) make a reflection pass which will include the hair reflections.
                            Imagine a furry character on a groundplane...now please render only it's reflection on the ground...where do you turn of the rendering of the hair that is not reflected (primary visibility of the shavenode)
                            OLIVER MARKOWSKI - Head of 3D at RISE | Visual Effects Studios

                            Comment


                            • #15
                              Originally posted by ultrasonic View Post
                              Imagine a furry character on a groundplane...now please render only it's reflection on the ground...where do you turn of the rendering of the hair that is not reflected (primary visibility of the shavenode)
                              Okay, if I render that with a reflection pass I see the fur on the ground but not on the character in that pass. Is that not what you want?
                              I do agree that it would be good to be able to turn off the primary visibility on the fur so that it can affect objects (shadows, reflection) without itself being visible in a render layer. The above is really a workaround using render elements instead.

                              Comment

                              Working...
                              X