【发布时间】:2016-01-21 21:35:30
【问题描述】:
我正在为学校动机制作游戏,我已经制作了精灵和背景(平铺地图)我的问题是如何使用键盘使精灵向左、向右、向后和向下移动,请大家帮忙我尽快这是我的代码:
public class LEVEL1 implements ApplicationListener, Screen {
private Music music;
private SpriteBatch batch;
private Texture Sprite;
private Vector2 position;
private TiledMap map;
private OrthogonalTiledMapRenderer renderer;
private OrthographicCamera camera;
@Override
public void render(float delta) {
Gdx.gl.glClearColor(1, 0, 0, 0);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
position.y = position.y - 5;
// player Controls
if(position.y < 0){
position.y = 0;
}
//..................................................
// renderer camera and map
camera.update();
renderer.setView(camera);
renderer.render();
//...................................................
//tells the computer when to start drawing textures
batch.begin();
batch.draw(Sprite, position.x, position.y, 50, 50);
batch.end();
//...................................................
camera = new OrthographicCamera();
camera.setToOrtho(true, 2920,950);
}
@Override
public void show() {
Sprite = new Texture("Sprite.png");
batch = new SpriteBatch();
position = new Vector2(650, Gdx.graphics.getHeight());
map = new TmxMapLoader().load("map1.tmx");
renderer = new OrthogonalTiledMapRenderer(map);
camera = new OrthographicCamera();
music = Gdx.audio.newMusic((Gdx.files.internal("GameSound.mp3")));
music.setLooping(false);
music.setVolume(0.5f);
music.play();
}
@Override
public void create() {
}
@Override
public void resize(int width, int height) {
camera.viewportWidth = width;
camera.viewportHeight = height;
camera.position.set(width/2f, height/3f, 0); //by default camera position on (0,0,0)
camera.update();
}
@Override
public void render() {
if(Gdx.input.justTouched())
music.play();
}
@Override
public void dispose() {
map.dispose();
renderer.dispose();
music.dispose();
}
@Override
public void hide() {
// TODO Auto-generated method stub
}
@Override
public void pause() {
// TODO Auto-generated method stub
}
@Override
public void resume() {
// TODO Auto-generated method stub
}
}
【问题讨论】:
-
你一定要google这个,这是libGDX中最基本的东西之一,所以网上有很多资源。例如,查看 wiki 上的示例项目:github.com/libgdx/libgdx/wiki/A-simple-game
-
嗨 :) 我到处搜索,但我不能让我的精灵随键盘移动,我也是编程新手,如果你能帮助我,请帮助:)
-
在我给你链接的页面上是逐字逐句解释的。
标签: java keyboard libgdx sprite 2d-games