Currently I'm trying to implement a PBR shader. And now I want to know how you've implemented rougness. My idea is to have a cubemap with MIP levels and sample the cubemap on a certain level depending on the roughness value.
float3 reflectedColor = cubeMap.SampleLevel(samplerCube, R, nMips - roughness * nMips).rgb;
nMips is the number of MIP levels in the texture.
But this approach doesn't look so nice. You can see an example in the picture. So how did you guys do it?