Image Based PBR Material with SSR

I didn’t create different degree blur. And use envMap to make cube reflection. Not use EnvironmentCamera.
A fake blur is like this(roughness is 1).

vec3 textureBlured(samplerCube tex, vec3 tc) {
	vec3 r = textureAVG(tex, vec3(1.0, 0.0, 0.0));
	vec3 t = textureAVG(tex, vec3(0.0, 1.0, 0.0));
	vec3 f = textureAVG(tex, vec3(0.0, 0.0, 1.0));
	vec3 l = textureAVG(tex, vec3(-1.0, 0.0, 0.0));
	vec3 b = textureAVG(tex, vec3(0.0, -1.0, 0.0));
	vec3 a = textureAVG(tex, vec3(0.0, 0.0, -1.0));

	float kr = dot(tc, vec3(1.0, 0.0, 0.0)) * 0.5 + 0.5;
	float kt = dot(tc, vec3(0.0, 1.0, 0.0)) * 0.5 + 0.5;
	float kf = dot(tc, vec3(0.0, 0.0, 1.0)) * 0.5 + 0.5;
	float kl = 1.0 - kr;
	float kb = 1.0 - kt;
	float ka = 1.0 - kf;

	kr = somestep(kr);
	kt = somestep(kt);
	kf = somestep(kf);
	kl = somestep(kl);
	kb = somestep(kb);
	ka = somestep(ka);

	float d;
	vec3 ret;
	ret = f * kf;
	d = kf;
	ret += a * ka;
	d += ka;
	ret += l * kl;
	d += kl;
	ret += r * kr;
	d += kr;
	ret += t * kt;
	d += kt;
	ret += b * kb;
	d += kb;

	return ret / d;
}

And then to do is to change the weight by roughness and fresnel.

vec3 finalRef = mix(ref, blurRef, (1.0 - fresnel) * roughness);

SSR have nothing to do with EnvMap.

These are the pictures that I use.