我相信這是非常簡單的事情。我有一個重大的腦凍結。我一直在反轉它,從它中減去它,再乘以它,加上它。無論發生什麼事情都是倒下來的。LibGDX向下向上向下Gdx.input.getY()
if (Gdx.input.isButtonPressed(Buttons.LEFT)) s.drawCirc(c, Gdx.input.getX(), Gdx.input.getY(), 100, 100);
x軸很好,罪魁禍首是Gdx.input.getY()
。當我將手指向上移動時,它會向上下移動。
我的圓圈排列在中間,但是當我上去時,它會下降,當我下去時它會上升。 (&當然如何修復它)
如果你需要知道c
是我的相機,這裏是代碼,以防萬一這是我使用
shapeRenderer.setProjectionMatrix(c.combined);
我會如何數學翻轉Y使其匹配?我只是想出於好奇而知道。另外爲了澄清LibGDX 0,0是左下角? OpenGL是左上角?只是試圖更好地形象化。 – CodeCamper
OpenGL,因此攝像頭(使用OpenGL)在左下角都有0,0。但是,輸入系統在左上角使用0,0。由於相機可以改變比例和位置,因此在兩者之間轉換時沒有簡單的數學方法,因此建議您在兩者之間轉換時使用未投影方法。但是,如果您的相機顯示整個世界並且沒有以任何其他方式進行縮放或轉換,只需使用SCREEN_HEIGHT - Gdx.input.getY()即可實現。不過這不推薦。 – kabb
可以在每個渲染事件上創建新的Vector3和unproject嗎? – CodeCamper