Announcement

Collapse
No announcement yet.

Retroreflective Material

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

  • Retroreflective Material

    I'm wondering if it would be possible to make a Retro-reflective Material. http://en.wikipedia.org/wiki/Retroreflector

    I have a night driving animation and I've been able to use a standard materials ambient color along with an ambient light to get a pretty decent effect however the setup is kind of a pain and there are problems with multiple ambient light sources. I suppose this would be somewhat similar to car paint material other then all the light is reflected more or less back toward the light source. Would this be something I could maybe do with the sdk.

    Thanks,
    Rod

  • #2
    Could you do something with a falloff set to shadow/light as a mask for self illumination? if you hide it in a housing then it shouldn't react to the ambient light until something is shined directly at it.

    Comment


    • #3
      Hmm I don't think so since an ambient light doesn't cast a shadow any light casting an ambient light on it will light it even if something should be blocking it. Plus vray sees an ambient light as just a normal light so you have to include only the object to be lit to that light. Any vray material will be lit like normal.

      Comment


      • #4
        instead of using ambient light, use a vray dome light and exclude the reflector object from it. you may also need to exclude the reflector object from receiving GI in the vray properties. I juts tested it and this will work.

        I dont really know how your scene is set up or what your ambient lights are but this is the way i'd make that material.
        Last edited by Neilg; 04-08-2014, 04:43 PM.

        Comment


        • #5
          Basically it is a night scene with cars driving down a road. Camera is from a drivers view. I need reflective street signs and road markings and reflectors to glow as the light hits them. I use spot lights for the headlights with a corresponding ambient spot light for the ambient. The main problem other then the setup is that another car's ambient will illuminate a sign even though it could be blocked by another object. Also that light would not necessarily reflect back to the camera.

          Comment


          • #6
            Originally posted by rodbrew View Post
            Would this be something I could maybe do with the sdk.
            You can modify the VRayBlinnMtl example to do a BRDF that reflects light back towards the direction it came from - I can probably try to do a test version for you if you like.

            Another solution could be to model the micro-cube structure of a retroreflector though this might take a long time to render.

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

            Comment


            • #7
              Originally posted by vlado View Post
              You can modify the VRayBlinnMtl example to do a BRDF that reflects light back towards the direction it came from
              Hi Vlado,

              I'll take a look though my programming skills are a little rusty.

              Originally posted by vlado View Post
              I can probably try to do a test version for you if you like.
              That would be awesome. Two parameters I was thinking would be needed would be to control the cone of the light reflected back and also maybe an angle at which the surface can no longer reflect back, say towards the edge of a traffic barrel if that makes sense. Here's an example of the effect I'm looking for. http://area.autodesk.com/userdata/forum/b/barrel02.jpg Incidentally that's kind of another drawback of the ambient method round objects are a little too flat shaded.

              Originally posted by vlado View Post
              Another solution could be to model the micro-cube structure of a retroreflector though this might take a long time to render.

              Best regards,
              Vlado
              Yeah this might not be too practical for something like a street sign. Maybe a bike reflector or something.

              Thanks,
              Rod

              Comment


              • #8
                Hi Vlado,

                I've gotten the Blinn Material plugin to compile so I'm wondering if you could give me a quick overview of what vectors I should be looking at to determine the visibility of the reflection and what their values should be in general. In the meantime I'll see if I can figure it out through trial and error.

                Thanks,
                Rod

                Comment


                • #9
                  According to this: http://blender.stackexchange.com/que...ender-internal

                  You want to replace the surface normal in the diffuse equation with the view vector.
                  Last edited by duke2; 16-08-2014, 08:51 PM.

                  Comment


                  • #10
                    Originally posted by duke2 View Post
                    According to this: http://blender.stackexchange.com/que...ender-internal

                    You want to replace the surface normal in the diffuse equation with the view vector.
                    Thanks Duke this did get me closer. As it is now the color is full strength the smaller the angle to the light source and gradually fades away until you are 90 degrees from the light. I'm assuming I now need to mess with the reflection weight function so that that the color is gone at say 5-10 degrees from the light source.

                    I'm guessing in here maybe
                    Code:
                    	// Skip this part if diffuse component is not required
                    	if (0!=(flags & FBRDF_DIFFUSE)) {
                    		float cs=(float) (direction*normal);
                    		if (cs<0.0f) cs=0.0f;
                    		float probReflection=2.0f*cs;
                    
                    		float k=getReflectionWeight(probLight, probReflection);
                    		res+=(0.5f*probReflection*k)*(diffuse_color*lightColor);
                    	}

                    Comment


                    • #11
                      Hi Vlado,

                      Just to update this I was able to hack together a Retro Reflective material. I decided to use the VrayAbcMtl instead of the Blinn so that I could use textures. Anyway here is the result.

                      http://forums.chaosgroup.com/images/attach/png.gif

                      The right side is just standard materials and the left have the Retro Reflective material. It works pretty good but I'm not sure all the energy is reflected back and there probably should be some falloff along the edges of round objects. I was a little lost on what vectors were what. I'd still love to have you work your magic on a new material and add it to VRay.

                      Thanks,
                      Rod
                      Attached Files
                      Last edited by rodbrew; 20-10-2014, 01:23 PM.

                      Comment


                      • #12
                        Here's how I set up the Stop sign.

                        Click image for larger version

Name:	RetroReflectiveMtl.PNG
Views:	1
Size:	96.6 KB
ID:	854449

                        Comment

                        Working...
                        X