Announcement

Collapse
No announcement yet.

include/exclude objects for reflect/refract

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

  • include/exclude objects for reflect/refract

    Of course, I'd also like this seperate.

    I might want one object visible to reflections, but not to refractions.

    So maybe I could look at a reflective object with a ball in front of it, but it would actually show the cube that is visible only to reflections/refractions.

    I also may want an object visible to reflections, but not refractions. I know a commonly asked for one here is a matte material which is usually assigned to the vray plane. You may want this object to reflect, but nearly never want it to refract as it causes some nasty render problems if you are trying to avoid compositing.

    Hopefully that's enough examples to help you guys understand that it would actually be pretty powerful. I'm pretty sure you can do it in MentalRay for Maya, so I know it's possible. I'm not sure if it's possible the way vray is currently built, but I would Really love to be able to do that.

    If that wasn't possible on a per object basis I wonder if it would be possible for vray to assign a vray override material to an object I want to hide to refraction and place a material that would produce no results changing the image (like a completely transparent with 1.0 refraction and 0 reflection) in the proper slot, but do it in such a way that no one sees it. I know that would probably be a lot of programming if it's possible.

    Hopefully that gets some wheels turning.

  • #2
    Select your object, right-click and go to VRay Properties....

    Comment


    • #3
      .....AND?

      Yeah, that doesn't help me at all. I see no section that will allow me to exclude one object from reflecting.

      Maybe I just didn't explain it right.


      I have a red ball, a blue ball, a wall and a floor. All are visible to the camera. All have reflective materials. I want to see the red ball being reflected in everything except for the floor. I want the blue ball being reflected in everything except for the wall. And I don't want to do it in compositing.

      How is that done currently?

      Comment


      • #4
        nope you cant. funny its something doable with the scanline for about as long as I've been using max, but vray can't for some reason.
        ____________________________________

        "Sometimes life leaves a hundred dollar bill on your dresser, and you don't realize until later that it's because it fu**ed you."

        Comment


        • #5
          It's a raytracer, not a scanline.
          What's it suppose to trace, instead of the object?
          Would the object cast a shadow?
          Would that shadow be visible in the reflections?
          Or refract in case?
          And would the reflection of the refraction be visible?
          Objects behind the non reflected, but refractive object, would be bent?
          It seems a fairly odd thing to ask a pure raytracer, to me...
          Mr can do it as it has a scanline component that kicks in.
          I'm not sure it can do that without the scanline enabled.
          This said, i'll wait for the Man to answer it

          Lele

          Comment


          • #6
            Originally posted by studioDIM
            It's a raytracer, not a scanline.
            What's it suppose to trace, instead of the object?
            Would the object cast a shadow?
            Would that shadow be visible in the reflections?
            Or refract in case?
            And would the reflection of the refraction be visible?
            Objects behind the non reflected, but refractive object, would be bent?
            It seems a fairly odd thing to ask a pure raytracer, to me...
            Mr can do it as it has a scanline component that kicks in.
            I'm not sure it can do that without the scanline enabled.
            This said, i'll wait for the Man to answer it

            Lele
            yes please
            ____________________________________

            "Sometimes life leaves a hundred dollar bill on your dresser, and you don't realize until later that it's because it fu**ed you."

            Comment


            • #7

              I was thinking out loud.
              I'm doing some raytracing with maxscript these days, as an excercise, that's why it ticked me off so quickly.
              Will sit patiently, and wait to be schooled once more

              Lele

              Comment


              • #8
                no i think your generally right. But why let the 'pure raytracer' excuse limit us to not using 'hybrid' methodologies? My simple point was that a crappy old renderer like the max scanline, has enough of a hybrid raytracer to allow what the OP asked about. ANd had it eons ago...
                ____________________________________

                "Sometimes life leaves a hundred dollar bill on your dresser, and you don't realize until later that it's because it fu**ed you."

                Comment


                • #9
                  If i recall right there was a similar discussion about hybrid rendering already, and if i recall right the problem is that you cannot optimise the raytracer as much as vray is if it needs to take scanline into account. So you would loose all the precious speed benefits with GI/AO/Raytracing that we all love so much

                  But that's a shot in the dark..

                  Thorsten

                  Comment


                  • #10
                    ah yes, my bad.
                    Seems to be actually fairly doable, looking at the vray properties.
                    Should just be one step more than what the current settings allow...
                    Will check the brain's connected next time

                    Lele

                    EDITn the other hand, reading the Thorsten and Sushidelic posts, and thinking about it a bit more, it seems a lot easier to globally exclude/include, rather than doing it selectively...
                    Geez, i'll have something to sleep on tonite...

                    Comment


                    • #11
                      pardon for my ignorance, as maybe my knowledge of raytracing isn't is good as yours.
                      But, if you can ignore a object for shadow casting now, or cause an object to not reflect, or cause an object to be excluded from GI or another light, then what would be to not allow you to make it so each object could be controlled in relation to another object for reflections?

                      It just sounds like another set of instructions to me...which yes, would probably make the rendering slower. But that would be something to add in the instructions. If no objects have the option turned on then the rendering skips those instructions. Sorry if my programming skills also aren't up to par.

                      It just really sounds doable without scanline.

                      Comment


                      • #12
                        Yeah, the discussion about "locals"... Sure it would be nice to have overrides for everything, beeing able just to exclude one object from reflection in exactly on other, have local gi controls, aa samples per object etc... I remember Vlado saying somewhere (correct me if i'm wrong) that this is not easily implemented.
                        Nevertheless, I'd really like to know if this is probably possible with the SDK, if I can catch any ray at any state and change it's properties, like fade it off(which leads here) , kill at a certain event or color it red - that's about the only thing I really liked about mental ray... (ok, the Driemeyer books as well...).
                        On the other hand - might that be the secret about vray's speed, that it is as "global" as it is?

                        regards,
                        Michael

                        PS: an older post i found
                        http://www.chaosgroup.com/forum/phpB...ection+exclude
                        This signature is only a temporary solution

                        Comment


                        • #13
                          Hi,

                          If you are interested in what can be retrieved from a ray you can have a look at the VRay SDK help and the IntersectionData Struct.
                          What you can get in a shader among others is the distance to the hit (Making falloff for reflection possible as mentioned in the other thread) and you can get a pointer to the primitive that produced the intersection.
                          Include and exclude of objects for raytracing is a bit more complex, because the ray has to either move on or change direction. AFAIK this can't be controlled from the shader that shoots the ray, but would be more a "core" thing.

                          Best regards,
                          Dieter
                          --------
                          visit my developer blog

                          Comment


                          • #14
                            At any rate, it may not be easy to do, but I still say it's a decent wish. I especially think it's a good one because it's useful and a competitor can do it. If it can be added without effecting the speed when Not using it, then I think it would be quite welcome. If it slows down Every render then it's probably not too welcome.

                            But this is a good wish/request nonetheless.

                            Comment


                            • #15
                              Some newer things have been added since this last post. Any new news on this topic? I did a couple projects lately that could have Really used this. I, again, had to do a couple different renders because I needed the reflection of object A in object B, but the reflection of object A needed to not happen in a nearby object C.
                              A tool like this would have been perfect. I ended up doing a render with and without object A, then comping them together. If the animation moved around more it would have been more difficult. A simple object exclude would have been nice.

                              Comment

                              Working...
                              X