The previous example demonstrated rotating the triangle based on the system clock. This created a continuously rotating triangle, depending on the render mode we used. But what if you wanted to respond to the input from the user?
In this recipe, we'll show how to respond to user input by overriding the onTouchEvent() callback from GLSurfaceView. We'll still rotate the triangle using the Matrix.setRotateM() method, but instead of deriving an angle from the system time, we'll calculate an angle based on the touch location.
Here's a screenshot showing this recipe running on a physical device (to highlight the touch, the Show touches developer option is enabled):