记录Qt与Cocos2dx结合时一个mac平台下崩溃的问题

此问题有待进一步研究。

Qt与Cocos2dx结合之后,cocos2dx一运行就会崩溃,经过反复排查,确定问题出在Director::drawScene中:

// Draw the Scene
void Director::drawScene()
{
    // calculate "global" dt
    calculateDeltaTime();
    
    if (_openGLView)
    {
        //_openGLView->pollEvents();        //TODO:Eagle Lau:qt will crash in mac, find how later //出问题的代码
    }

    //tick before glClear: issue #533
    if (! _paused)
    {
        _eventDispatcher->dispatchEvent(_eventBeforeUpdate);
        _scheduler->update(_deltaTime);
        _eventDispatcher->dispatchEvent(_eventAfterUpdate);
    }
...

将这句注释掉以后就不会崩溃了。

至于为什么cocos2dx独立运行不会,但通过Qt的QTimer调进去就会,有待进一步研究。

如果Qt和cocos2dx结合编程遇到一进游戏就崩溃的问题,可以看看是不是这个原因

posted @ 2017-01-28 13:57  长空小鹰  阅读(414)  评论(0)    收藏  举报