Question about shadows, lighting, and materials types

Background: I have a skybox where the ground is a light grey color. I have created a plane that is the same color as the sky box that will act as the ground and will receive a shadow. It is wide enough that it sort of fades in with the skybox in the background. I am trying to find a material type that will receive/show the shadow, but won’t change in color anywhere other than the shadow.

I have attempted using phong and standard but those change the color of the plane and it no longer blends with the rest of the skybox. I have attempted using ShadowMaterial, but I couldn’t get it to show the shadow. I have also tried using a standard material on the skybox but I couldnt get the bottom of the box to act as the ground without it throwing off the proportions of everything else.

Has anyone else dealt with this problem before?

Have you tried MeshBasicMaterial? This material does not react on light sources (a so called unlit material) so it should be easy to represent a constant color value over the plane.

Thank you for the response. I have tried that but the problem I’m having is that the MeshBasicMaterial doesn’t show shadows.

Yeah, that makes sense. MeshBasicMaterial does not receive shadows.

Can you please share your current progress? Maybe as a live demo? The following example might be a bit of a help since it uses ShadowMaterial.

https://threejs.org/examples/#webgl_materials_cars

1 Like

I think this example is exactly what I’m looking for. I’ll give it a go when I get home. Thanks so much!

Edit: Actually it looks like they are using a png as the shadow. I need a shadow that will adjust as new objects are imported into the scene. I will work on a codepen tonight to help show the problem

1 Like

So I have a hacky work around that is good enough for my solution. I just use a MeshPhongMaterial but make the opacity very low (~.1) The shadow still shows up but the color from the skybox underneath is pretty much all you see.