AndroidでOpenGLアプリを作っていたところ、glTexImage2DがGL_INVALID_VALUE (1281) というエラーになって動かない。よくよく調べると、テクスチャの寸法が768x768と、2のベキじゃない値になっている。元のPNGファイルは間違いなく512x512なのに。誰かが勝手に画像を拡大している!? と、ここまで気づくのに2日間。 このテクスチャは、PNGをres/drawableに置いておき、BitmapFactory.decodeResource(Resources,int)で読み込んでいたのだが、このメソッドが勝手に拡大しているとしか思えない。 decodeResourceメソッドには、引数を3個取るバージョンがあって、第3引数にはBitmapFactory.Optionsというものを渡す。この説明をよーく読むと、Options.inScaledというパ