I am beginning some OpenGL-ES 2.0 for the Android system. I took the following code from: http://developer.android.com/training/graphics/opengl/environment.html#renderer
public class MyRenderer implements GLSurfaceView.Renderer {
public void onSurfaceCreated(GL10 unused, EGLConfig config) {
GLES20.glClearColor(0.5f, 0.5f, 0.5f, 1.0f);
}
public void onDrawFrame(GL10 unused) {
GLES20.glClear(GLES20.GL_COLOR_BUFFER_BIT);
}
public void onSurfaceChanged(GL10 unused, int width, int height) {
GLES20.glViewport(0, 0, width, height);
}
}
Gradle: error: MyRenderer is not abstract and does not override abstract method onSurfaceCreated(GL10,EGLConfig) in Renderer
Does anyone know how to proceed? I need to use the MyRenderer
class to pass to the GLSurfaceView
, so simply declaring it abstract is not a viable solution. Can anybody shed some light on my problem?
The Incorrect version of the imports looked like this
import android.opengl.GLES20;
import android.opengl.GLSurfaceView;
import android.opengl.EGLConfig;
import javax.microedition.khronos.opengles.GL10;
But GLSurfaceView.Renderer
wanted the EGLConfig
from the javax
library
The following code is the Correct version of the imports
import android.opengl.GLES20;
import android.opengl.GLSurfaceView;
import javax.microedition.khronos.egl.EGLConfig;
import javax.microedition.khronos.opengles.GL10;
public static interface Renderer {
void onSurfaceCreated(javax.microedition.khronos.opengles.GL10 gl10, javax.microedition.khronos.egl.EGLConfig eglConfig);
void onSurfaceChanged(javax.microedition.khronos.opengles.GL10 gl10, int i, int i1);
void onDrawFrame(javax.microedition.khronos.opengles.GL10 gl10);
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With