レンダリングする必要がある個々のタイルをロードするための OpenGL コードのオーバーヘッドを回避するために、単純な 2D Android アプリケーションでテクスチャ マッピングを実行しようとしています。ただし、これによりコードがはるかに複雑になり、非常に厄介なエラーが発生しています。
これは、何が起こっているかを正確に描いた画像です。テクスチャ マッピングで使用されるソース座標または宛先座標のいずれかがわずかにずれているという 2 つのいずれかが起こっているように見えます。
事前に計算したソース座標が適切な値を見つけたので、それらが問題であるとは信じがたいです。目的地の座標は、OpenGL 座標系の原点がシフトされるゲーム世界の「ウィンドウ」を介して計算されます。次に、タイルを配置しながらウィンドウを反復処理します。
「ピクセル中心」座標ではなく「ピクセルエッジ」座標を使用すると、これが発生することをどこかで読みました。しかし、ソース座標を 0.5 ピクセルずらしてみました (私のテクスチャ マップは 1024x1024 なので、0.5f/1024 を加算/減算しました)、問題は解決しません。
誰かが同様の問題を抱えていたり、私を正しい道に導く可能性のある同様のものを見たことがありますか? 特に近いので、このグラフィックシステムを再設計する必要があるのは本当に嫌です.