У меня есть этот код:
for (int house = 0; house < housePos.housePositionsX.length; house++) {
float dX = housePos.housePositionsX[house] + translationX;
float dY = housePos.housePositionsY[house] + translationY;
Matrix.setIdentityM(mModelMatrix, 0);
Matrix.translateM(mModelMatrix, 0, dX, dY, houseDepth);
Matrix.scaleM(mModelMatrix, 0, houseScale, houseScale, 1.0f);
drawHouse(dX, dY);
housePos.housePosWithTranslationX[house] = dX;
housePos.housePosWithTranslationY[house] = dY;
}
В котором я рисую пару домов в нескольких местах, где dX и dY находятся между -1 и 1. Затем я использую код:
float posTouchedNDCX = (event.getX() / deviceWidth)*2 - 1;
float posTouchedNDCY = (event.getY() / deviceHeight)*(-2) + 1;
, чтобы получить координаты клика в том же диапазоне -1 и 1. Проблема в том, что эти координаты не совпадают, когда я нажимаю на любой из домов, и я просто не смог выяснить как правильно конвертировать клик.