0
我使用一个EGLConfig规格如下:为什么在OpenGL ES 2.0中像素颜色不准确?
EGL10.EGL_RED_SIZE, 5,
EGL10.EGL_GREEN_SIZE, 6,
EGL10.EGL_BLUE_SIZE, 5,
EGL10.EGL_DEPTH_SIZE, 16,
EGL10.EGL_RENDERABLE_TYPE, 4,
EGL10.EGL_SAMPLE_BUFFERS, 1,
EGL10.EGL_SAMPLES, 4,
着色器:
private final static String vertexShaderCode =
"uniform mat4 uMVPMatrix;" +
"attribute vec4 vPosition;" +
"void main() {" +
" gl_Position = uMVPMatrix * vPosition;" +
"}";
private final static String fragmentShaderCode =
"precision mediump float;" +
"uniform vec4 vColor;" +
"void main() {" +
" gl_FragColor = vColor;" +
"}";
onSurfaceCreated:
GLES20.glClearColor(1f, 1f, 1f, 1f);
// Initialising shapes
onDrawFrame:
GLES20.glClear(GLES20.GL_COLOR_BUFFER_BIT | GLES20.GL_DEPTH_BUFFER_BIT);
// Drawing shapes
法案ual问题在于形状颜色并不牢固,这发生在整个屏幕区域(有更亮的像素):
实际颜色是0.55f,0.8f,0.3f。
这部分非常类似于http://stackoverflow.com/questions/31204343/opengl-es-2-0-solid-colour-colour-value-precision-issue。但另一个问题更多地集中在颜色的实际价值上,颜色不统一只是其中的一个方面。所以它看起来不够接近,因此被标记为重复。 –
我看到了这个问题,但不知何故,当我测试时我错过了它真正起作用。 – YeeApple