Loading libs/hwui/Program.cpp +7 −4 Original line number Diff line number Diff line Loading @@ -29,6 +29,8 @@ Program::Program(const char* vertex, const char* fragment) { mInitialized = false; mHasColorUniform = false; // No need to cache compiled shaders, rely instead on Android's // persistent shaders cache GLuint vertexShader = buildShader(vertex, GL_VERTEX_SHADER); if (vertexShader) { Loading Loading @@ -135,10 +137,11 @@ void Program::set(const mat4& projectionMatrix, const mat4& modelViewMatrix, const mat4& transformMatrix, bool offset) { mat4 t(projectionMatrix); if (offset) { // offset screenspace xy by an amount that compensates for typical precision issues // in GPU hardware that tends to paint hor/vert lines in pixels shifted up and to the left. // This offset value is based on an assumption that some hardware may use as little // as 12.4 precision, so we offset by slightly more than 1/16. // offset screenspace xy by an amount that compensates for typical precision // issues in GPU hardware that tends to paint hor/vert lines in pixels shifted // up and to the left. // This offset value is based on an assumption that some hardware may use as // little as 12.4 precision, so we offset by slightly more than 1/16. t.translate(.375, .375, 0); } t.multiply(transformMatrix); Loading libs/hwui/ProgramCache.h +1 −2 Original line number Diff line number Diff line Loading @@ -27,6 +27,7 @@ #include "Debug.h" #include "Program.h" #include "Properties.h" namespace android { namespace uirenderer { Loading @@ -42,8 +43,6 @@ namespace uirenderer { #define PROGRAM_LOGD(...) #endif // TODO: This should be set in properties #define PANEL_BIT_DEPTH 20 #define COLOR_COMPONENT_THRESHOLD (1.0f - (0.5f / PANEL_BIT_DEPTH)) #define COLOR_COMPONENT_INV_THRESHOLD (0.5f / PANEL_BIT_DEPTH) Loading libs/hwui/Properties.h +4 −1 Original line number Diff line number Diff line Loading @@ -73,8 +73,11 @@ enum DebugLevel { #define PROPERTY_TEXT_BLACK_GAMMA_THRESHOLD "ro.text_gamma.black_threshold" #define PROPERTY_TEXT_WHITE_GAMMA_THRESHOLD "ro.text_gamma.white_threshold" // TODO: This should be set by a system property #define PANEL_BIT_DEPTH 20 // Converts a number of mega-bytes into bytes #define MB(s) (s * 1024 * 1024) #define MB(s) s * 1024 * 1024 #define DEFAULT_TEXTURE_CACHE_SIZE 24.0f #define DEFAULT_LAYER_CACHE_SIZE 16.0f Loading Loading
libs/hwui/Program.cpp +7 −4 Original line number Diff line number Diff line Loading @@ -29,6 +29,8 @@ Program::Program(const char* vertex, const char* fragment) { mInitialized = false; mHasColorUniform = false; // No need to cache compiled shaders, rely instead on Android's // persistent shaders cache GLuint vertexShader = buildShader(vertex, GL_VERTEX_SHADER); if (vertexShader) { Loading Loading @@ -135,10 +137,11 @@ void Program::set(const mat4& projectionMatrix, const mat4& modelViewMatrix, const mat4& transformMatrix, bool offset) { mat4 t(projectionMatrix); if (offset) { // offset screenspace xy by an amount that compensates for typical precision issues // in GPU hardware that tends to paint hor/vert lines in pixels shifted up and to the left. // This offset value is based on an assumption that some hardware may use as little // as 12.4 precision, so we offset by slightly more than 1/16. // offset screenspace xy by an amount that compensates for typical precision // issues in GPU hardware that tends to paint hor/vert lines in pixels shifted // up and to the left. // This offset value is based on an assumption that some hardware may use as // little as 12.4 precision, so we offset by slightly more than 1/16. t.translate(.375, .375, 0); } t.multiply(transformMatrix); Loading
libs/hwui/ProgramCache.h +1 −2 Original line number Diff line number Diff line Loading @@ -27,6 +27,7 @@ #include "Debug.h" #include "Program.h" #include "Properties.h" namespace android { namespace uirenderer { Loading @@ -42,8 +43,6 @@ namespace uirenderer { #define PROGRAM_LOGD(...) #endif // TODO: This should be set in properties #define PANEL_BIT_DEPTH 20 #define COLOR_COMPONENT_THRESHOLD (1.0f - (0.5f / PANEL_BIT_DEPTH)) #define COLOR_COMPONENT_INV_THRESHOLD (0.5f / PANEL_BIT_DEPTH) Loading
libs/hwui/Properties.h +4 −1 Original line number Diff line number Diff line Loading @@ -73,8 +73,11 @@ enum DebugLevel { #define PROPERTY_TEXT_BLACK_GAMMA_THRESHOLD "ro.text_gamma.black_threshold" #define PROPERTY_TEXT_WHITE_GAMMA_THRESHOLD "ro.text_gamma.white_threshold" // TODO: This should be set by a system property #define PANEL_BIT_DEPTH 20 // Converts a number of mega-bytes into bytes #define MB(s) (s * 1024 * 1024) #define MB(s) s * 1024 * 1024 #define DEFAULT_TEXTURE_CACHE_SIZE 24.0f #define DEFAULT_LAYER_CACHE_SIZE 16.0f Loading