texture:一个图片从原始格式解码并上传到GPU就被称为纹理
要绘图时,首先要绑定纹理,然后传递一个几何描述给OpenGL进行绘制。而绘图的大小和位置由几何描述和OpenGL的viewport的设置共同决定。
SpriteBatch被赋予了纹理和坐标以便每个图形的绘制。它(SpriteBatch)汇集了很多图形而没有直接提交给GPU。如果它被赋予的纹理不同于原有的,它将保持原有的图形,并获取新的图形。
图片的分辨率必须是2的次方(如32*32,256*512)。
材质:
import com.badlogic.gdx.ApplicationListener;
import com.badlogic.gdx.Gdx;import com.badlogic.gdx.graphics.GL10;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
public class TestGame implements ApplicationListener {
// 绘图用的SpriteBatch
private SpriteBatch batch;
// 纹理
private Texture texture;
@Override
public void create() {
batch = new SpriteBatch(); // 实例化
texture = new Texture(Gdx.files.internal("data/screen1.png"));
}
@Override
public void resize(int width, int height) {
// TODO Auto-generated method stub
}
@Override
public void render() {
Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT); //清屏
batch.begin();
batch.draw(texture,20,10);
batch.end();
}
@Override
public void pause() {
// TODO Auto-generated method stub
}
@Override
public void resume() {
// TODO Auto-generated method stub
}
@Override
public void dispose() {
// TODO Auto-generated method stub
}
}