Add developer setting to set the default GPU renderer.

Test: manual on-device testing
Bug: 35345959
Change-Id: I1d846f922a048dd215caf053b10aaa909bdbc74d
This commit is contained in:
Derek Sollenberger
2017-02-14 11:38:06 -05:00
parent 69f42ecbb6
commit 4badfe6d3b
5 changed files with 29 additions and 2 deletions

View File

@@ -163,6 +163,18 @@ public final class ThreadedRenderer {
*/
public static final String OVERDRAW_PROPERTY_SHOW = "show";
/**
* Defines the rendering pipeline to be used by the ThreadedRenderer.
*
* Possible values:
* "opengl", will use the existing OpenGL renderer
* "skiagl", will use Skia's OpenGL renderer
* "skiavk", will use Skia's Vulkan renderer
*
* @hide
*/
public static final String DEBUG_RENDERER_PROPERTY = "debug.hwui.renderer";
/**
* Turn on to debug non-rectangular clip operations.
*

View File

@@ -211,7 +211,7 @@ RenderPipelineType Properties::getRenderPipelineType() {
return sRenderPipelineType;
}
char prop[PROPERTY_VALUE_MAX];
property_get(PROPERTY_DEFAULT_RENDERER, prop, "opengl");
property_get(PROPERTY_RENDERER, prop, "opengl");
if (!strcmp(prop, "skiagl") ) {
sRenderPipelineType = RenderPipelineType::SkiaGL;
} else if (!strcmp(prop, "skiavk") ) {

View File

@@ -156,7 +156,7 @@ enum DebugLevel {
* Allows to set rendering pipeline mode to OpenGL (default), Skia OpenGL
* or Vulkan.
*/
#define PROPERTY_DEFAULT_RENDERER "debug.hwui.default_renderer"
#define PROPERTY_RENDERER "debug.hwui.renderer"
///////////////////////////////////////////////////////////////////////////////
// Runtime configuration properties

View File

@@ -444,6 +444,18 @@
<item>show_deuteranomaly</item>
</string-array>
<!-- Titles for debug renderer preference. [CHAR LIMIT=50] -->
<string-array name="debug_hw_renderer_entries">
<item>OpenGL (Default)</item>
<item>OpenGL (Skia)</item>
</string-array>
<!-- Values for debug renderer preference. -->
<string-array name="debug_hw_renderer_values" translatable="false" >
<item>opengl</item>
<item>skiagl</item>
</string-array>
<!-- Titles for app process limit preference. [CHAR LIMIT=35] -->
<string-array name="app_process_limit_entries">
<item>Standard limit</item>

View File

@@ -584,6 +584,9 @@
<!-- UI debug setting: show the amount of overdraw in apps using the GPU [CHAR LIMIT=25] -->
<string name="debug_hw_overdraw">Debug GPU overdraw</string>
<!-- UI debug setting: select the renderer to use by RenderThread [CHAR LIMIT=25] -->
<string name="debug_hw_renderer">Set GPU Renderer</string>
<!-- UI debug setting: disable use of overlays? [CHAR LIMIT=25] -->
<string name="disable_overlays">Disable HW overlays</string>
<!-- UI debug setting: disable use of overlays summary [CHAR LIMIT=50] -->