2016-03-28 25 views
0
//this is the UPDATE method 
public void update(float delta) { 
    handlingInput(); 

    deltaTime = Gdx.graphics.getDeltaTime(); 
    timer += deltaTime; 
    if (timer >= 1) { 
     buttons.add(new Buttons()); 
     timer -= 1; 
    } 

    cam.update(); 

    Iterator<Buttons> butts = buttons.iterator(); 
    while(butts.hasNext()) { 
     Buttons button = butts.next(); 
     button.update(delta); 
     if (button.getPosition().x > Gdx.graphics.getWidth()) { 
      butts.remove(); 
     } 
    } 
} 

Bu yönteminiAndroid libgdx düşen nesneler

public void render(SpriteBatch sb) { 
    sb.setProjectionMatrix(cam.combined); 
    sb.begin(); 
    for (Buttons butts: buttons) { 
     sb.draw(butts.getButTexture(), butts.getPosition().x, butts.getPosition().y); 
    } 
    sb.end(); 
} 

hale ve bu düşen nesnelerin GÜNCELLEME olan

public void update(float delta) { 
    position.x += (int) (300 * delta); 
} 

Ben öyle böylece düşen nesne benim delta zaman çarpmak zorunda eğer gecikme olursa olsun. Ayrıca yüzmeyi denedim, ama problem pürüzsüz gitmemesidir, sadece birkaç milisaniye geciktirir. Ben yeniyim ve kaybettiklerimden emin değilim!

+0

Düğmeler sınıfı nedir? Tahminimce bunu yapmak ve bazılarını GC'ye bırakmak, hıçkırıklarınıza neden oluyor. Düğmeler yapıcısında doku yüklüyor musunuz? – Tenfour04

+0

Bir düğme oluşturulduğunda rasgele bir şekilde oluşturduğum bir Doku var, bu yüzden her düğmenin contrsctor'da yetersiz kaldığı kendi dokusu vardı! Bu yanlış bir şey mi? Çünkü daha yeni bir telefonda denedim ve çok iyi çalıştı ve masaüstünde de ... Her düğme için farklı bir doku nasıl yüklerim? – pigi

+0

Oluşturma yönteminde gereksinim duyacağınız tüm dokuları yükleyin ve Düğmelerin referans göstermesini sağlayın. O zaman animasyonlar çalışırken bunları yüklemeyeceksin, bu da kekemelere sebep olur. – Tenfour04

cevap

0

sb.setProjectionMatrix(cam.combined); render yönteminden çıkmayı denediniz mi? Bildiğim kadarıyla, sadece bir kez çağrılabilir, SpriteBatch'i oluşturduğunuzda, ve belki de bu kaynak pahalı ve oyunun laggy olmasını sağlayarak (bunun nedeni olmayabilir, ancak başka bir şey bulamıyorum).

+1

Eğer OP'den sorgular yapmak isterseniz, Lütfen yorum bırakın. Bir cevap sadece gereksinimi ve – NSNoob

+0

kaldırmaya çalıştıysanız, aynı tuhaf, çünkü hareket yumuşak görünüyor, ancak sonra her birkaç "zaman" sadece laggs ... – pigi