我希望有人能提供帮助——我正在 Opengl es 2.0 中开发动态壁纸。除了一个区域,我对一切都很好。当用户触摸屏幕时,我希望在该特定点出现一个新对象。但我无法让它工作。
这是我的渲染器代码
public class Renderer implements GLSurfaceView.Renderer
{
private final Context mActivityContext;
private float x = 0;
private float y = 0;
private Object mObject;
public Renderer(final Context activityContext){
mActivityContext = activityContext;
}
public void onSurfaceCreated(GL10 glUnused, EGLConfig config){
if (mObject!=null){
//code below initiates textures and shaders
mObject.onSurfaceCreated(mActivityContext);
}
//view matrix code goes here
}
public void onSurfaceChanged(GL10 glUnused, int width, int height) {
//setup projection matrix
}
public void onDrawFrame(GL10 glUnused) {
GLES20.glClear(GLES20.GL_COLOR_BUFFER_BIT | GLES20.GL_DEPTH_BUFFER_BIT);
if (mObject!=null){
mObject.drawParticle();
mObject.update();
}
}
public void onTouchEvent(MotionEvent me) {
if (me.getAction() == MotionEvent.ACTION_DOWN) {
x = me.getX();
y = me.getY();
//add new object
mObject = new Object (x,y);
}
}
}
当我触摸屏幕时,什么也没有发生(没有添加对象)。请问我做错了什么?
非常感谢期待。