【发布时间】:2015-07-01 22:14:55
【问题描述】:
我将我的纹理设置为每次调用渲染函数时调整大小为Gdx.graphics.getWidth()、Gdx.graphics.getHeight()。事实上,当我启动应用程序时,纹理设置为全屏(如我所愿)。但是当我改变应用程序的大小时,纹理会以某种愚蠢的方式绘制,而我希望它一直全屏显示。
代码如下:
package com.leopikinc.bobdestroyer;
import com.badlogic.gdx.ApplicationAdapter;
import com.badlogic.gdx.Gdx;
import com.badlogic.gdx.audio.Music;
import com.badlogic.gdx.graphics.GL20;
import com.badlogic.gdx.graphics.Texture;
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
public class BobDestroyer extends ApplicationAdapter {
SpriteBatch batch;
Texture mainscreen;
Music intromusic;
float VOLUME;
@Override
public void create () {
VOLUME = 1f;
batch = new SpriteBatch();
mainscreen = new Texture(Gdx.files.internal("data/FirstLevel.png"));
intromusic = Gdx.audio.newMusic(Gdx.files.internal("data/IntroMusic.mp3"));
intromusic.setLooping(true);
intromusic.setVolume(VOLUME);
intromusic.play();
}
@Override
public void render () {
Gdx.gl.glClearColor(1, 1, 1, 0);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
batch.begin();
batch.draw(mainscreen, 0, 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
batch.end();
}
@Override
public void resize(int width, int height){
}
}
【问题讨论】:
-
你说的笨方法是什么意思?你能给我们一张你的屏幕照片吗?
标签: graphics libgdx game-engine