surfaceflinger: use Vulkan coordinate system
In Vulkan coordinate system, (0, 0) always maps to memory address 0. In GL coordinate system, (0, 0) maps to the bottom-left corner. The two agree when doing offscreen rendering. But when rendering to a window, GL maps (0, 0) to memory address (winHeight-1)*rowStride, because that is where the bottom-left pixel is. Let's pick the simpler one for RenderEngine in preparation for multiple backends. As a result, we don't need yswap when rendering to offscreen buffers (it is hidden behind the RenderEngine API). It also makes no sense to flip Y coordinate for both vertex postions and the viewing volume. Test: chrome, youtube, camera, screen rotation, screenshots, recents Change-Id: I6d6317bac3de6f208700a67e518011362c600ced
Loading
Please register or sign in to comment