- Home /
Are real-time reflection probes working with specular convolution on mobile devices?
Suspecting specular convolution was simply missing from the real-time reflection probe's render target on Android, I modified a custom shader to simply output all of the cubemap's miplevels. As expected, only the full resolution reflection was present. None of the mipmaps were ever updated with specular convolution (they remain black). This was true regardless of which real-time reflection mode I set the probe to use, enabling/disabling time-slicing made no difference.
My initial tests using my custom shaders appeared to prove that real-time reflection probes do indeed work on Android. Updating reflections every frame was, as expected, fairly slow even with timeslicing enabled, but it did appear work...because the shaders I had used in the test simply displayed the reflection probe's cubemap at full resolution (it just so happened that all of the specular materials in my scene at that time had glossiness set to 1.0). To improve performance on hardware, I elected to trigger reflection probe updates via script and reduce the resolution of the cubemaps...which is when I decided against ever having perfectly smooth materials. And that's when I started noticing that the reflections would drop glancing cube-facings or fade as the camera pulled back from the surface.
Custom reflections work fine on Android and are my present workaround (the probes are still set as real-time for PC, but the script I use to trigger probe updates switches the probe type to custom on mobile devices). I was hoping to take advantage of script-triggered real-time reflections so I wouldn't have to store files for every environment / lighting scheme we plan to load at run-time.
Is this a known bug or simply a limitation of real-time reflection probe implementation on mobile devices? I haven't even checked to see if this is the case on iOS.
Same issue for me. Any update on that ? Using iOS iPad 3 in OpenGL ES 2.0. 16*16 cubemap with mipmaps in linear mode
It's 2017 and in Unity 2017.2 I think this is still an issue. All reflection probes and environment reflection cubemaps reflect with full sharpness regardless of the roughness/smoothness setting.
Even if it's not very accurate, I'd appreciate some kiind of cut down mobile version of convolution for reflection/lighting cubemaps.