Revision 81f0078a
Added by Leszek Koltunski almost 7 years ago
src/main/java/org/distorted/library/EffectQueuePostprocess.java | ||
---|---|---|
302 | 302 |
GLES30.glVertexAttribPointer(mBlur1Program.mAttribute[0], POS_DATA_SIZE, GLES30.GL_FLOAT, false, 0, mQuadPositions); |
303 | 303 |
GLES30.glVertexAttribPointer(mBlur1Program.mAttribute[1], TEX_DATA_SIZE, GLES30.GL_FLOAT, false, 0, mQuadTexture); |
304 | 304 |
|
305 |
//DistortedRenderState.switchOffDepthWriting(); |
|
306 |
//DistortedRenderState.useStencilMark(); |
|
305 |
DistortedRenderState.useStencilMark(); |
|
307 | 306 |
GLES30.glDrawArrays(GLES30.GL_TRIANGLE_STRIP, 0, 4); |
308 |
//DistortedRenderState.unuseStencilMark(); |
|
309 |
//DistortedRenderState.restoreDepthWriting(); |
|
307 |
DistortedRenderState.unuseStencilMark(); |
|
310 | 308 |
|
311 | 309 |
// vertical blur |
312 | 310 |
GLES30.glViewport(0, 0, (int)w2, (int)h2); |
313 | 311 |
mBlur2Program.useProgram(); |
314 | 312 |
buffer2.setAsInput(); |
315 |
buffer1.setAsDepth();
|
|
313 |
buffer2.setAsDepth();
|
|
316 | 314 |
surface.setAsOutput(time); |
317 | 315 |
|
318 | 316 |
GLES30.glUniform1fv( mWeights2H, radius+1, weightsCache,offset); |
Also available in: Unified diff
Switch on Stencil in Postprocessing.
This is a clear win on Nexus 5X; on Nexus 4 it is debatable - faster on loads where area to be postprocessed is not much (~20% ?) of the screen; slower otherwise.