Я хочу сделать изображение в OpenGL ES20 для моего приложения для Android. Потому что я действительно новым для OpenGL я использовал пример из enter link description hereКоординаты экрана OpenGLES20 для NDC
Я уже определены объекты, используя систему NDC [-1, 1] , но в этом примере вы должны определить вершины, используя экранные координаты. Мой вопрос сейчас: Как я могу изменить систему координат экрана обратно в систему NDC?
PS: я думаю, что проблема лежит в этой части кода:
@Override
public void onSurfaceChanged(GL10 gl, int width, int height) {
// We need to know the current width and height.
mScreenWidth = width;
mScreenHeight = height;
// Redo the Viewport, making it fullscreen.
GLES20.glViewport(0, 0, width, height);
// Clear our matrices
for(int i=0;i<16;i++)
{
mtrxProjection[i] = 0.0f;
mtrxView[i] = 0.0f;
mtrxProjectionAndView[i] = 0.0f;
}
// Setup our screen width and height for normal sprite translation.
Matrix.orthoM(mtrxProjection, 0, 0f, width, 0.0f, height, 0, 50);
// Set the camera position (View matrix)
Matrix.setLookAtM(mtrxView, 0, 0f, 0f, 1f, 0f, 0f, 0f, 0f, 1.0f, 0.0f);
// Calculate the projection and view transformation
Matrix.multiplyMM(mtrxProjectionAndView, 0, mtrxProjection, 0, mtrxView, 0);
}
Спасибо всем ответившим !!