FBX Trouble

I’ve got a scene (i’ve tried to attach the scene in a rar archive but it wouldn’t upload. will keep trying) that originated in revit, went into max for texturing, baking and some model tweaking and then into unity via fbx. I’ve created a plain in unity to hover just over my concrete floor with an additive shader applied for reflections. Everything seemed to be working fine and then the reflections stopped working. When i raise the plane off the floor the reflections appear but not over all the objects. I know it sounds confusing but if someone can download the scene and move the plane up (named “plane” in the scene)they will see what i’m refering to. Would really appreciate it if someone can take a look at this for me. I’m pulling out my hair!

Thanks.

Rob

You probably need to offset the depth of the additive plane by a little bit in the shader:

But depending on how large this plane is you might still get some Z fighting. So it’s probably best to just use a cubemap reflective shader directly on the concrete instead of doing it on a separate mesh.

Edit- you say it’s not showing up over “all” the objects… so there is more than just the concrete floor? Are there other semi-transparent meshes on the floor?

Thanks for your response Ethan. I couldn’t upload the file so here’s a link to the file on yousendit

I’ve tested the shader on a small plane and it still has the same problem. It was working perfectly in the beginning and suddenly it just stopped. I’m a newbie here so i’m probably missing something very straight forward. When i raise the reflective plane up off the ground i can see it reflect over certain objects it rises over like the tables but when i lower it and it’s just over the concrete floor it reflects nothing. I hope you can download the file via yousendit. Thanks for your help,

Rob

The link you posted isn’t a Unity project folder… you need to zip up the entire thing including the Library folder.

Oops, sorry. :sweat_smile: Here it is:

Cheers,
Rob

Replace your “Mirror Reflection Additive” shader with this:

Shader "FX/Mirror Reflection Additive" { 
Properties { 
    _Color("Color", Color) = (1,1,1,1) 
    _ReflectionTex ("Reflection", 2D) = "white" { TexGen ObjectLinear } 
} 
	Subshader 
	{ 
		Tags { "Queue" = "Transparent" }
	    Blend One One 
	    ZWrite Off 
	    Pass 
	    { 
	        SetTexture[_ReflectionTex] 
	        { 
	            matrix [_ProjMatrix] 
	            constantColor [_Color] 
	            combine texture * constant 
	        } 
	    } 
	} 
}

The only thing I added was “Tags { “Queue” = “Transparent” }” to change the render order.

Thank you! Works perfectly now.