Problems with viewing angle and Offset

The goal here is to not let anything closer than a certain mesh be seen, but see everything past it.

There are three flat-colored objects in this scene. A plane, sphere, and cube. Their subshader looks like this:

Tags {Queue = Transparent}
Color [_Color]
Pass {}

Then, there is a second plane, between the first plane and the other two objects, with this subshader:

Tags {Queue = Transparent}
Ztest Always
Colormask 0
Offset 0, -10000000
Pass {}

Now, this works perfectly, but only when the polygon is viewed from the left or below. From the right or above, it doesn’t render what’s behind it, for nearby objects. And it needs to render anything of equal or greater distance.

I can make it render what’s behind it by using a similarly huge negative number as the first Offset parameter, but then the objects in front will render.

:?: :?: :?:

240791--8618--$screen_shot_2009_12_20_at_10130_pm_192.png
240791--8619--$screen_shot_2009_12_20_at_10149_pm_181.png

Well, I guess it has something to do with rendering order. Here’s a case where Unity decides to render the cube before the see-through plane, but not the sphere. Any workaround?

240798--8620--$screen_shot_2009_12_20_at_14457_pm_339.png