Need a reflective shader that gets alpha and color from cubemap and that's it...

I’ve been studying the built-in reflective shaders but they are all pretty long and complicated, enough that I can’t figure out how to strip them down to what I need.

I want the shader to just use one cubemap, drawn transparently using the cubemap’s alpha channel. No maintexture, no diffuse, no lighting at all. It should be a very short shader. Now that I think about it, could I start in the other direction and hack something like mobile/particles/alphablended to use a cubemap instead of a texture2d?

I wish I could just use Strumpy Shader Editor to make it but I wanted to have lots of objects using it and nothing I’ve made in SSE will do dynamic batching. So I guess I have to beg the resident shader wizards for help here. I’m going to keep messing around with the built-in shaders files but any clues you could give me would be a big help, because I am entirely without clue at the moment.

Edit : Here’s what I’ve got so far. I actually created something that doesn’t render pink or invisible!
But it seems to be more transparent than it ought to be. Can you take a look at this…?

Shader “Reflective/Alpha/Unlit”
{
Properties
{
_Cube (“Cubemap”, Cube) = “” { TexGen CubeReflect }
}

Category
{
Tags { “Queue”=“Transparent” “IgnoreProjector”=“True” “RenderType”=“Transparent” }
Blend SrcAlpha OneMinusSrcAlpha
Cull Back Lighting Off ZWrite On Fog { Color (0,0,0,0) }
BindChannels
{
Bind “Color”, color
Bind “Vertex”, vertex
Bind “TexCoord”, texcoord
}
SubShader
{
CGPROGRAM
#pragma surface surf Lambert alpha
struct Input {
float3 worldRefl;
};
samplerCUBE _Cube;
void surf (Input IN, inout SurfaceOutput o) {
o.Alpha = texCUBE (_Cube, IN.worldRefl).a;
o.Emission = texCUBE (_Cube, IN.worldRefl).rgb;
}
ENDCG
}
}
}

Then a surface shader is not what you should use. TexGen is only useful for fixed function shaders, so don’t bother with it. You do have a frankenstein of a shader there, with a bunch of fixed function stuff that isn’t necessary, actually.