я пытаюсь сделать простую игру с Gles на android.
Я много гуглил для решения, но я не смог найти никого, кто бы упоминал, как реализовать ontouchevent в GLES.
здесья, как я реализовал это до сих пор ... я знаю, что это глупый способ сделать это: D, но это был единственный способ, которым я мог придумать, чтобы освободить переменную positionx, пока нет постукивания
краткое резюмемой класс рендерера ...
public class GLmain implements Renderer {
public float mX,mY;
public boolean clicked;
public GLmain()
{
clicked=false;
}
public void onDrawFrame(GL10 gl) {
if(clicked)
{
positionx=mX;
positiony=mY;
clicked=false
}
}
}
в и класс активности
public class Alpha extends Activity {
private GLSurfaceView glSurface;
public float mousex,mousey;
public GLmain glrend=new GLmain();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
glSurface = new GLSurfaceView(this);
glSurface.setRenderer(glrend);
setContentView(glSurface);
}
@Override
public boolean onTouchEvent(MotionEvent event) {
glrend.clicked=true;
glrend.mX=event.getX();
glrend.mY=event.getY();
return true;
}}