本文介绍了实现GLSurfaceView.Renderer问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在为Android系统开始一些 OpenGL-ES 2.0 .我从以下代码中获取了以下代码: http://developer.android.com/training/graphics/opengl /environment.html#renderer
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);
}
}
我收到以下错误
有人知道如何进行吗?我需要使用MyRenderer
类传递给GLSurfaceView
,因此简单地将其声明为抽象不是可行的解决方案.有人可以阐明我的问题吗?
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?
推荐答案
发现了问题!
导入的不正确版本如下所示
import android.opengl.GLES20;
import android.opengl.GLSurfaceView;
import android.opengl.EGLConfig;
import javax.microedition.khronos.opengles.GL10;
但是GLSurfaceView.Renderer
希望从javax
库中获取EGLConfig
以下代码是导入的正确版本
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);
}
这篇关于实现GLSurfaceView.Renderer问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!