1
Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.background);
我background.png的大小512x512px的Android的OpenGL:Bitmap.getHeight()>實際高度
我使用BitmapFactory加載背景資源文件的位圖。
的斯特朗的事情:
Log.d("bitmap height", bmp.getHeight() + "px");
總是返回768px。
這怎麼可能?
我的OpenGL是設置這樣的:
width = 480;
height = 800;
gl.glViewport(0, 0, width, height);
gl.glMatrixMode(GL10.GL_PROJECTION);
gl.glLoadIdentity();
gl.glOrthof(0.0f, width, 0.0f, height, -1.0f, 1.0f);
gl.glShadeModel(GL10.GL_FLAT);
gl.glEnable(GL10.GL_BLEND);
gl.glBlendFunc(GL10.GL_SRC_ALPHA, GL10.GL_ONE_MINUS_SRC_ALPHA);
gl.glColor4x(0x10000, 0x10000, 0x10000, 0x10000);
gl.glEnable(GL10.GL_TEXTURE_2D);
gl.glHint(GL10.GL_PERSPECTIVE_CORRECTION_HINT, GL10.GL_FASTEST);
gl.glClearColor(0.5f, 0.5f, 0.5f, 1);
gl.glDisable(GL10.GL_DEPTH_TEST);
gl.glDisable(GL10.GL_DITHER);
gl.glDisable(GL10.GL_LIGHTING);
gl.glClear(GL10.GL_COLOR_BUFFER_BIT | GL10.GL_DEPTH_BUFFER_BIT);
我可以更改此因子嗎?還是必須呈現所有更小尺寸的精靈?這個因素來自哪裏? –
我想你會問,因爲你的背景超過了屏幕邊界。在我的應用程序中,我使用android:scaleType =「fitXY」作爲背景ImageView,並且忘記了png的尺寸。這有用嗎? – Zappescu
不,不是。我的「背景」是一個「正常」的精靈。我在背景或其他圖像精靈之間沒有任何區別。我使用OpenGL來繪製這些精靈,所以我不能做任何設置像「scaleType」或每一個:/ –