初めての投稿です。私は独学で教えていますので、やさしくしてください!Java/libGDX - Actions.fadeIn()とActions.fadeOut()との問題
私はゲームを使用してlibGDXでボンバーマンレプリカゲームを構築し、画面の授業してきた:
public class Main extends Game {
...
@Override
public void create() {
levelScreen = new LevelScreen(playerCount, new int[playerCount]);
levelScreen.level.addAction(Actions.sequence(Actions.alpha(0), Actions.fadeIn(2f)));
this.setScreen(levelScreen);
}
しかしゲームは何のフェード効果がない起動したとき。
public class LevelScreen implements Screen {
...
@Override
public void render(float delta) {
Gdx.gl.glClearColor(1, 0.1f, 0.5f, 0);
Gdx.gl.glClear(GL20.GL_COLOR_BUFFER_BIT);
batch.begin();
level.act();
level.draw();
batch.end();
}
このレベルのスクリーンを黒からフェードインしたいが、それはちょうどしない!
私は、黒からtrophyScreenにフェードイン、黒にこのlevelScreenのフェードアウトしたいの上に丸いです:
(メインクラスから)
@Override
public void render() {
super.render();
if (endRoundTimer <= 0) {
trophyScreen = new TrophyScreen(playerCount, levelScreen.getScore());
levelScreen.level.addAction(Actions.sequence(Actions.fadeOut(1), Actions.run(new Runnable() {
@Override
public void run() {
setScreen(trophyScreen);
}
})));
}
}
そして、私が使って試してみましたTrophyScreenでshow()メソッドは:
public class TrophyScreen implements Screen {
...
@Override
public void show() {
stage.addAction(Actions.sequence(Actions.alpha(0), Actions.fadeIn(1)));
}
私は、検索の負荷を行い、様々なものが、無喜びを試みました。私はdraw()やrender()メソッドのどこかで、フェードアクションの実行を妨げている何かが欠けていると確信しています。
UPDATE1
@Override public void draw() {
super.draw();
if (roundOver) {
this.getBatch().begin(); String s = String.format("%s", message);
font_text.draw(this.getBatch(), s, (90 + (2 * 30)), (this.getHeight()/2));
this.getBatch().end();
}
アニメーションのフェードには何を使用していますか? –
'LevelScreen.level'クラスの' draw'メソッドを表示してください。 Tenfour04 @私は、libgdxアクションクラスを使用して、アクションシーケンスを作成、フェードイン(フロート期間)を0にアルファを設定しています – Tenfour04
@ZeRubeus – CChapman01