0
내 게임에 Scene2D
기능을 사용합니다. 가상 화면 크기가 1920x1080 인 FitViewport
이 있습니다.Scene2D 좌표
viewport = new FitViewport(AssetLoader.VIRTUAL_WIDTH, AssetLoader.VIRTUAL_HEIGHT);
stage = new Stage(viewport);
또한 Actor
클래스로부터 연장 MyActor
클래스가있다. 나는이 얻을 실행하는 경우
public void draw(Batch batch, float parentAlpha) {
super.draw(batch, parentAlpha);
batch.end();
renderer.begin(ShapeRenderer.ShapeType.Line);
this.drawDebugBounds(renderer);
renderer.end();
batch.begin();
font.draw(batch, text, getX(), getY());
}
: MyActor
생성자 :
public MyActor(String text, float x, float y) {
this.text = text;
FreeTypeFontGenerator generator = new FreeTypeFontGenerator(AssetLoader.robotoFontFile);
FreeTypeFontGenerator.FreeTypeFontParameter parameter = new FreeTypeFontGenerator.FreeTypeFontParameter();
parameter.size = 96;
font = generator.generateFont(parameter);
generator.dispose();
layout = new GlyphLayout();
layout.setText(font, text);
super.setBounds(x, y, layout.width, layout.height);
this.debug();
renderer = new ShapeRenderer();
this.addListener(new InputListener(){
@Override
public boolean touchDown(InputEvent event, float x, float y, int pointer, int button) {
Gdx.app.log("MyActor", text + " is touched!");
return true;
}
});
}
그리고 MyActor
는 draw()
방법을 오버라이드
InputListener
입력을 처리 만 나는에도 불구하고 녹색 사각형을 터치 할 때 예상되는 텍스트의 터치 감.
그래서 문제가 어디에 있습니까? BitmapFont
draw
메서드는 왼쪽 위 모서리의 위치를 취하거나 좌표에 문제가 있습니까?
고마워요! 스케일링 및 순환 게재가 작동하지 않는 이유에 대해 설명해 주시겠습니까? – danielleontiev
이 스레드를 확인하십시오 http://stackoverflow.com/a/42406597/3445320 – Aryan
스케일을 변경하거나 회전 한 액터 만 크기를 조정하거나 회전 할 때 글꼴 액터의 경우 액터는 모델이며보기가 영향을받지 않는 글꼴입니다. – Aryan