am 730c0f65
: Merge "Fix stencil mask usage in HWUI" into mnc-dev
* commit '730c0f6591b1c99699e9d0ecf36d696f7d87629f': Fix stencil mask usage in HWUI
This commit is contained in:
@ -60,8 +60,14 @@ GLenum Stencil::getLayerStencilFormat() {
|
||||
}
|
||||
|
||||
void Stencil::clear() {
|
||||
glStencilMask(0xff);
|
||||
glClearStencil(0);
|
||||
glClear(GL_STENCIL_BUFFER_BIT);
|
||||
|
||||
if (mState == kTest) {
|
||||
// reset to test state, with immutable stencil
|
||||
glStencilMask(0);
|
||||
}
|
||||
}
|
||||
|
||||
void Stencil::enableTest(int incrementThreshold) {
|
||||
@ -104,17 +110,17 @@ void Stencil::enableDebugTest(GLint value, bool greater) {
|
||||
// We only want to test, let's keep everything
|
||||
glStencilOp(GL_KEEP, GL_KEEP, GL_KEEP);
|
||||
mState = kTest;
|
||||
glStencilMask(0);
|
||||
}
|
||||
|
||||
void Stencil::enableDebugWrite() {
|
||||
if (mState != kWrite) {
|
||||
enable();
|
||||
glStencilFunc(GL_ALWAYS, 0x1, 0xffffffff);
|
||||
// The test always passes so the first two values are meaningless
|
||||
glStencilOp(GL_KEEP, GL_KEEP, GL_INCR);
|
||||
glColorMask(GL_TRUE, GL_TRUE, GL_TRUE, GL_TRUE);
|
||||
mState = kWrite;
|
||||
}
|
||||
glStencilMask(0xff);
|
||||
}
|
||||
|
||||
void Stencil::enable() {
|
||||
|
Reference in New Issue
Block a user