設定された画面サイズ (この例では 800x480) で実行する必要がある OpenGL アプリがあります。次のコマンドを使用します。
this.getHolder().setFixedSize(800, 480)
これを行うには、GLSurfaceView コンストラクターで。これは、画面が大きいデバイスでも、アプリが画面全体を占めることを意味します。
これにより、ビュー onTouchEvent() で getX() & getY() メソッドが (0,0) から (800,480) にスケーリングされた値を返さなくなりました。
実際の画面サイズに基づいた倍率を getX() 値に適用しようとしましたが、それがどうあるべきかを正確に判断できませんでした。
getX() と getY() をどのようにスケーリングしますか? そもそも画面を目的の解像度にスケーリングするために使用する必要がある別の方法はありますか?