2013-07-31 6 views
6

У меня есть едва заметный, но раздражающий и случайный сбой, подвигающий актера с движком движений. Актер - это просто группа с изображением. Твинг - это просто линейный справа от экрана влево и повторяющийся.Сбой с движком с движком и libgdx

FPS всегда показывает 60.

Любая идея?

Это код:

public class BackgroundScreen extends AbstractScreen { 

public BackgroundScreen() {  
    stage = new Stage(); 
    stage.setViewport(Properties.VIRTUAL_WIDTH, Properties.VIRTUAL_HEIGHT, false); 
    createRock(); 
} 

private void createRock() { 
    rock = new GameElement(atlas.createSprite("obj-stone")); 
    rock.setX(Properties.VIRTUAL_WIDTH); 
    rock.setY(100); 
    float duration=5f; 
    Tween.to(rock, ActorAccessor.POSITION_XY, duration/2).ease(Linear.INOUT).target(-rock.getWidth(), rock.getY()).repeat(Tween.INFINITY, 0).start(Resources.tweenManager); 
    stage.addActor(rock); 
} 

@Override 
public void render(float delta) { 
    Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT); 
    Resources.tweenManager.update(delta); 
    stage.act(delta); 
    stage.draw(); 
} 

} 

UPDATE

Это ссылка на видео YouTube с эффектом. Два соображения:

http://www.youtube.com/watch?v=0pVJbGFciyo

а) Когда screenrecording видео, glich более выражен, как вы можете смотреть. б) Я не вижу никаких сбоев в своем Galaxy Nexus. c) Я сделал ту же анимацию с только действиями libgdx, и сбой - то же самое d) Как-то это связано с моим ПК.

+1

Вам нужно будет более подробно описать «случайный сбой». Неясно, какую проблему вы видите. –

+0

Я загружу видео как можно скорее. –

+0

Я обновил вопрос. Спасибо. –

ответ

0

Вы должны играть с уравнением движения. С учетом ставки я бы сказал, что Linear.INOUT - это то, что заставляет спрайт сбой. maybye просто попробуйте запустить его с Linear.IN будет делать трюк.

Смежные вопросы