Android 앱을 개발하려고하는데 정말 불쾌한 문제를 발견했습니다.LibGDX ScalingViewport의 위치가 변경되지 않습니다.
"메인"뷰포트와 다른 뷰포트를 사용하여 특정 요소를 제어하기 위해 다른 스테이지를 사용하려고합니다. Scaling.none으로 Scaling 뷰포트를 사용하기 시작했습니다. Scaling.none은 내가 찾고있는 뷰포트에 가장 적합한 것처럼 보입니다. 문제는 내가 위치를 바꿀 때 움직이지 않는다는 것입니다! 화면의 중앙에 그냥 있습니다. 다음은 뷰포트의 컨스트럭터에서 사용하는 코드입니다.
viewport = new StretchViewport(720, 1280, cam);
viewport.apply();
cam.position.set(cam.viewportWidth/2, cam.viewportHeight/2,0);
secondaryViewport = new ScalingViewport(Scaling.none, 480, 421);
secondaryViewport.setScreenPosition(240, 0);
확대/축소 뷰포트를 이동할 수 없습니까?
편집 : 여기 내 렌더링() 방법 :
@Override
public void render(SpriteBatch sb) {
cam.update();
secondaryViewport.getCamera().update();
sb.setProjectionMatrix(cam.combined);
Gdx.gl.glViewport(0, 0, Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
sb.begin();
sb.setColor(Color.WHITE);
sb.draw(bg, cam.position.x - cam.viewportWidth/2, 0, cam.viewportWidth, cam.viewportHeight);
sb.end();
stage.getViewport().apply();
stage.draw();
stage.act();
secondaryStage.getViewport().apply();
secondaryStage.draw();
secondaryStage.act();
}
이었다! – vladutelu
다른 뷰포트를 어떻게 사용하고 있습니까? – Aryan
render() 메서드의 코드를 여기에 붙여 넣으시겠습니까? – vladutelu