これは、OpenGLを使用した2Dゲーム用です。
OpenGLを使用すると、ストレッチやぼやけがなく、完全にフィルタリングされていないテクスチャを表示できますか?
そのため、BMPを使用してOpenGLテクスチャに変換し、そのテクスチャを取得して元に戻すときに、変更や品質/データの損失はありませんか?
もちろん、GL_MIN_FILTER と GL_MAG_FILTER を GL_NEAREST に設定することによって行われるフィルタリングを無効にするだけです。また、テクセルがピクセルと同じサイズになるように、適切なサイズでテクスチャを描画してください。
マティアスが以前に言ったように-1つのことは設定GL_MIN_FILTER
しGL_MAG_FITLER
てGL_NEAREST
(経由でglTexParameter*
)することです。
ただし、ピクセルパーフェクトレンダリングの場合、もう1つ重要なことがあります。つまり、テクスチャを2の累乗に再スケーリングしたくないということです。GL_TEXTURE_RECTANGLE
最も簡単な方法は、の代わりにバインディングターゲットを介してテクスチャを指定することですGL_TEXTURE_2D
。このようなバインドされたテクスチャでは、テクスチャ座標は通常のように範囲(0..1,0..1)ではなく、代わりに(0..w、0..h)になります。この方法で、テクセルごとのインデックスを簡単に作成できます。