0

cocos2d-x を初めて使用し、Android の .plist ファイルからスプライト アニメーションを実行する際に問題が発生しました。以下は、ccTouchesBegan でスプライトをアニメーション化するために iam が使用しているコードです。

リソースフォルダーにplistファイルがあります

void HelloWorld::ccTouchesBegan(cocos2d::CCSet *pTouches, cocos2d::CCEvent *pEvent)
{
    mole->stopAllActions();

    CCArray *frames = CCArray::create();
    for(int i = 1; i <= 11; i++)
    {
        CCString *frame = CCString::createWithFormat("b%04d.png", i);
        frames->addObject(CCSpriteFrameCache::sharedSpriteFrameCache()->spriteFrameByName(frame->getCString()));
    }
    mole->runAction(CCAnimate::create(CCAnimation::create(frames,.15)));
}

次のログを取得します。

05-01 16:02:33.328: D/dalvikvm(3506): Added shared lib /data/data/com.cocos.moleit/lib/libgame.so 0x405167e0
05-01 16:02:33.328: I/ApplicationPackageManager(3506): cscCountry is not German : PAK
05-01 16:02:33.359: I/GLThread(3506): noticed surfaceView surface lost tid=10
05-01 16:02:33.367: D/SensorManager(3506): ====>>>>>Num Sensor: 1
05-01 16:02:33.367: D/SensorManager(3506): ====>>>>>Num Sensor: 2
05-01 16:02:33.367: D/SensorManager(3506): ====>>>>>Num Sensor: 3
05-01 16:02:33.367: D/SensorManager(3506): ====>>>>>Num Sensor: 4
05-01 16:02:33.367: D/SensorManager(3506): ====>>>>>Num Sensor: 5
05-01 16:02:33.367: D/SensorManager(3506): ====>>>>>Num Sensor: 6
05-01 16:02:33.367: D/SensorManager(3506): ====>>>>>Num Sensor: 0
05-01 16:02:33.375: I/GLThread(3506): onResume tid=10
05-01 16:02:33.375: D/cocos2d-x debug info(3506): cocos2d: cocos2d-2.1rc0-x-2.1.2
05-01 16:02:33.453: I/GLThread(3506): noticed surfaceView surface acquired tid=10
05-01 16:02:33.453: W/EglHelper(3506): start() tid=10
05-01 16:02:33.523: D/libEGL(3506): loaded /system/lib/egl/libGLES_hgl.so
05-01 16:02:33.531: D/BRCM_EGL(3506): eglCreateContext() context: 0x1ba388, VC context 1, Thread 3515
05-01 16:02:33.531: W/EglHelper(3506): createContext com.google.android.gles_jni.EGLContextImpl@4052b938 tid=10
05-01 16:02:33.531: I/GLThread(3506): noticing that we want render notification tid=10
05-01 16:02:33.531: W/GLThread(3506): egl createSurface
05-01 16:02:33.531: W/EglHelper(3506): createSurface()  tid=10
05-01 16:02:33.531: D/BRCM_EGL(3506): eglCreateWindowSurface() surface: 0x1ba3f8, VC surface: 1, Thread: 3515
05-01 16:02:33.531: D/BRCM_EGL(3506): eglMakeCurrent(0x1ba388, 0x1ba3f8, 0x1ba3f8) Thread: 3515
05-01 16:02:33.531: W/GLThreadManager(3506): checkGLESVersion mGLESVersion = 131072 mMultipleGLESContextsAllowed = true
05-01 16:02:33.531: W/GLThread(3506): onSurfaceCreated
05-01 16:02:33.601: D/cocos2d-x debug info(3506): cocos2d: GL_VENDOR:     Broadcom
05-01 16:02:33.601: D/cocos2d-x debug info(3506): cocos2d: GL_RENDERER:   VideoCore IV HW
05-01 16:02:33.601: D/cocos2d-x debug info(3506): cocos2d: GL_VERSION:    OpenGL ES 2.0
05-01 16:02:33.601: D/cocos2d-x debug info(3506): cocos2d: GL_MAX_TEXTURE_SIZE: 2048
05-01 16:02:33.601: D/cocos2d-x debug info(3506): cocos2d: GL_MAX_TEXTURE_UNITS: 8
05-01 16:02:33.601: D/cocos2d-x debug info(3506): cocos2d: GL supports PVRTC: NO
05-01 16:02:33.601: D/cocos2d-x debug info(3506): cocos2d: GL supports BGRA8888 textures: NO
05-01 16:02:33.601: D/cocos2d-x debug info(3506): cocos2d: GL supports NPOT textures: YES
05-01 16:02:33.601: D/cocos2d-x debug info(3506): cocos2d: GL supports discard_framebuffer: YES
05-01 16:02:33.601: D/cocos2d-x debug info(3506): cocos2d: GL supports shareable VAO: NO
05-01 16:02:33.601: D/cocos2d-x debug info(3506): cocos2d: compiled with Profiling Support: NO
05-01 16:02:34.484: W/GLThread(3506): onSurfaceChanged(320, 240)
05-01 16:02:34.687: I/GLThread(3506): sending render notification tid=10
05-01 16:02:50.335: E/cocos2d-x assert(3506): C:/tahir/cocos2dx_zip/cocos2d-2.1rc0-x-2.1.2/cocos2d-2.1rc0-x-2.1.2/moleitx/proj.android/../../cocos2dx/sprite_nodes/CCAnimation.cpp function:initWithAnimationFrames line:144
05-01 16:02:50.335: E/cocos2d-x assert(3506): C:/tahir/cocos2dx_zip/cocos2d-2.1rc0-x-2.1.2/cocos2d-2.1rc0-x-2.1.2/moleitx/proj.android/../../cocos2dx/sprite_nodes/CCAnimation.cpp function:initWithAnimationFrames line:144
05-01 16:02:50.335: E/cocos2d-x assert(3506): C:/tahir/cocos2dx_zip/cocos2d-2.1rc0-x-2.1.2/cocos2d-2.1rc0-x-2.1.2/moleitx/proj.android/../../cocos2dx/sprite_nodes/CCAnimation.cpp function:initWithAnimationFrames line:144
05-01 16:02:50.343: E/cocos2d-x assert(3506): C:/tahir/cocos2dx_zip/cocos2d-2.1rc0-x-2.1.2/cocos2d-2.1rc0-x-2.1.2/moleitx/proj.android/../../cocos2dx/sprite_nodes/CCAnimation.cpp function:initWithAnimationFrames line:144
05-01 16:02:50.343: E/cocos2d-x assert(3506): C:/tahir/cocos2dx_zip/cocos2d-2.1rc0-x-2.1.2/cocos2d-2.1rc0-x-2.1.2/moleitx/proj.android/../../cocos2dx/sprite_nodes/CCAnimation.cpp function:initWithAnimationFrames line:144
05-01 16:02:50.343: E/cocos2d-x assert(3506): C:/tahir/cocos2dx_zip/cocos2d-2.1rc0-x-2.1.2/cocos2d-2.1rc0-x-2.1.2/moleitx/proj.android/../../cocos2dx/sprite_nodes/CCAnimation.cpp function:initWithAnimationFrames line:144
05-01 16:02:50.343: E/cocos2d-x assert(3506): C:/tahir/cocos2dx_zip/cocos2d-2.1rc0-x-2.1.2/cocos2d-2.1rc0-x-2.1.2/moleitx/proj.android/../../cocos2dx/sprite_nodes/CCAnimation.cpp function:initWithAnimationFrames line:144
05-01 16:02:50.343: E/cocos2d-x assert(3506): C:/tahir/cocos2dx_zip/cocos2d-2.1rc0-x-2.1.2/cocos2d-2.1rc0-x-2.1.2/moleitx/proj.android/../../cocos2dx/sprite_nodes/CCAnimation.cpp function:initWithAnimationFrames line:144
05-01 16:02:50.343: E/cocos2d-x assert(3506): C:/tahir/cocos2dx_zip/cocos2d-2.1rc0-x-2.1.2/cocos2d-2.1rc0-x-2.1.2/moleitx/proj.android/../../cocos2dx/sprite_nodes/CCAnimation.cpp function:initWithAnimationFrames line:144
05-01 16:02:50.343: E/cocos2d-x assert(3506): C:/tahir/cocos2dx_zip/cocos2d-2.1rc0-x-2.1.2/cocos2d-2.1rc0-x-2.1.2/moleitx/proj.android/../../cocos2dx/sprite_nodes/CCAnimation.cpp function:initWithAnimationFrames line:144
05-01 16:02:50.343: E/cocos2d-x assert(3506): C:/tahir/cocos2dx_zip/cocos2d-2.1rc0-x-2.1.2/cocos2d-2.1rc0-x-2.1.2/moleitx/proj.android/../../cocos2dx/sprite_nodes/CCAnimation.cpp function:initWithAnimationFrames line:144

144行目:私はこれを持っています

bool CCAnimation::initWithAnimationFrames(CCArray* arrayOfAnimationFrames, float delayPerUnit, unsigned int loops){

    CCARRAY_VERIFY_TYPE(arrayOfAnimationFrames, CCAnimationFrame*); // line 144 error:

    m_fDelayPerUnit = delayPerUnit;
    m_uLoops = loops;

    setFrames(CCArray::createWithArray(arrayOfAnimationFrames));

    CCObject* pObj = NULL;
    CCARRAY_FOREACH(m_pFrames, pObj)
    {
        CCAnimationFrame* animFrame = (CCAnimationFrame*)pObj;
        m_fTotalDelayUnits += animFrame->getDelayUnits();
    }
    return true;
}

助けてください!

よろしく、 ムハンマド・タヒル・アシュラフ

4

3 に答える 3