gpt4 book ai didi

android - LIBGDX 相机不动

转载 作者:行者123 更新时间:2023-11-29 20:30:50 24 4
gpt4 key购买 nike

我的游戏设置了这个屏幕,我看到了我创建的 Actor 。

但是谁能告诉我为什么相机似乎没有移动?当我按下向左键时,我希望 Actor 向右移动。

Gdx.input.isKeyPressed(Input.Keys.LEFT) 确实解析为 true 并且翻译函数确实被调用。

public class MainScreen implements Screen {

private Stage mainStage;
private Camera orthCamera;

@Override
public void show() {


orthCamera = new OrthographicCamera();

mainStage = new Stage(new ScreenViewport());
mainStage.getViewport().setCamera(orthCamera);

MyGameActorObject s = new MyGameActorObject();
s.setPosition(100, 100);

mainStage.addActor(s);
}

@Override
public void render(float delta) {

Gdx.gl.glClearColor(0,0,0,1); //sets clear
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);

processKeyboardInput();

mainStage.act(delta);
mainStage.draw();
}

private void processKeyboardInput()
{
if (Gdx.input.isKeyPressed(Input.Keys.LEFT)) {
orthCamera.translate(-30, 0, 0);
orthCamera.update();
}
}

@Override
public void resize(int width, int height) {

}

@Override
public void pause() {

}

@Override
public void resume() {

}

@Override
public void hide() {

}

@Override
public void dispose() {
mainStage.dispose();
}
}

我正在努力实现能够使用键盘输入在 2d 游戏世界中平移。

这是自定义 Actor 对象的内容:

public class MyGameActorObject extends Actor
{
@Override
public void act(float delta) {
super.act(delta);
}

@Override
public void draw(Batch batch, float parentAlpha) {

super.draw(batch, parentAlpha);

ShapeRenderer r = new ShapeRenderer();

r.begin(ShapeRenderer.ShapeType.Filled);
r.setColor(Color.RED);
r.circle(this.getX() - 50.0f, this.getY() - 50.0f, 100.0f);
r.end();

}
}

最佳答案

我相信我必须添加类似的东西

r.setProjectionMatrix(batch.getProjectionMatrix());

在我的自定义 actor 对象中。所以我的对象上的绘制函数现在是。

    @Override
public void draw(Batch batch, float parentAlpha) {

super.draw(batch, parentAlpha);

ShapeRenderer r = new ShapeRenderer();

r.setProjectionMatrix(batch.getProjectionMatrix());
r.begin(ShapeRenderer.ShapeType.Filled);
r.setColor(Color.RED);
r.circle(this.getX() - 50.0f, this.getY() - 50.0f, 100.0f);
r.end();

}

关于android - LIBGDX 相机不动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32011063/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com