1
화면을 터치하여 x, y 축을 사용하여 카메라의 이동/변경 위치를 만들어야합니다. 나는 이전의 많은 질문을 읽었지만, 내 문제를 해결할 수있는 어떤 것도 발견하지 못했습니다.java에서 openGL : TouchEvent로 카메라 이동
어떻게이 코드를 사용할 수 있습니까? : 또한 완전한 소스를 제공 https://developer.android.com/training/graphics/opengl/touch.html :
class ESSurfaceView extends GLSurfaceView {
private final float TOUCH_SCALE_FACTOR = 180.0f/320;
private float mPreviousX;
private float mPreviousY;
@Override
public boolean onTouchEvent(MotionEvent e) {
float x = e.getX();
float y = e.getY();
switch (e.getAction()) {
case MotionEvent.ACTION_MOVE:
float dx = x - mPreviousX;
float dy = y - mPreviousY;
if (y > getHeight()/2) {
dx = dx * -1 ;
}
if (x < getWidth()/2) {
dy = dy * -1 ;
}
GLRenderer.setAngle(
GLRenderer.getAngle() +
((dx + dy) * TOUCH_SCALE_FACTOR));
requestRender();
}
mPreviousX = x;
mPreviousY = y;
return true;
}
public ESSurfaceView(Context context)
{
super(context);
setEGLContextClientVersion(2);
GLRenderer renderer = new GLRenderer();
setRenderer(renderer);
// Render the view only when there is a change in the drawing data
//setRenderMode(GLSurfaceView.RENDERMODE_WHEN_DIRTY);
}}