public IShader CompileFromFile(BindingStage stage, String filename, FixedShaderParameters parameters)
        {
            Driver.IShaderBase b = compiler.Compile(stage, filename);

            // We now terminate it.
            switch (stage)
            {
            case BindingStage.VertexShader:
                return(new VShader(parameters, (Driver.IVShader)b));

            case BindingStage.PixelShader:
                return(new PShader(parameters, (Driver.IPShader)b));

            case BindingStage.GeometryShader:
            default:
                throw new NotImplementedException();
            }
        }