2016-04-07 45 views
0

i geliştirdik cocos 2dx oyunda Sprite dokusunu alın textureFilename'un korunduğuna dair bana hata veriyor, nasıl çözebilirim? Eğer işe yaramazsa, başka ne deneyebilirim? Dokunduğum ve animasyonun çalıştığı ekranda bir düğme olduğu için, pürüzsüz hale getirmek istiyorum. Yani, eğer animasyon tekrar bantlama arasındaysa, tekrardan değil şimdiki noktadan başlıyor.hangi i kod aşağıdaki denedim bunun için geçerli <code>texture name</code> almak istiyorum cocos 2DX

+0

Dosya örneklerini/dokuları bir vektör örneği değişkeninde tutun? Muhtemelen bir dizin örneği değişkenine de ihtiyacınız olacaktır, böylece vektörde hangi öğenin kullanımda olduğunu biliyorsunuzdur. – trojanfoe

+0

Ama yine de hareketli grafiğin mevcut animasyon çerçevesini nasıl alacağım? @trojanfoe –

+0

Ayarladığınızda bunu bileceksiniz. Mevcut çerçeveyi tanımladığınız şeyin sırrı yoktur. – trojanfoe

cevap

0

_textureFilename değişkenine erişmek istiyorsanız, CCSpriteFrame.h dosyasını değiştirmeniz gerekir.

Önce CCSpriteFrame.h bu kod

protected: 
    Vec2 _offset; 
    Size _originalSize; 
    Rect _rectInPixels; 
    bool _rotated; 
    Rect _rect; 
    Vec2 _offsetInPixels; 
    Size _originalSizeInPixels; 
    Texture2D *_texture; 
    std::string _textureFilename; 
    PolygonInfo _polygonInfo; 

dosyasını bulmak gerekir Ve bu koddan sınırının altında kesilen

std::string _textureFilename; 

şimdi CCSpriteFrame.h dosyasının en yapıştırın zorunda Kamu kapsamı tanımlanır.

class CC_DLL SpriteFrame : public Ref, public Clonable 
{ 
public: 

    std::string _textureFilename; 

Umarım size yardımcı olacaktır. Teşekkürler.

+0

Bu oldukça kötü bir fikir ve çok az fayda için hiç bitmeyen bir bakım sorununa neden olacak. – trojanfoe

+0

Onun iyi bir fikir olmadığını biliyorum ama bazen bunu yapmak zorundasınız. –

+0

Sadece sorulan soru için basit bir çözüm veriyorum. Daha iyi bir Çözüme sahipseniz, lütfen cevap verin. @ trojanfoe. –