首页 > 代码库 > Cocos2d-x学习笔记(三)main方法

Cocos2d-x学习笔记(三)main方法

0. UNREFERENCED_PARAMETER(X)避免编译器关于未引用参数的警告。

#pragma warning( push )#pragma warning( disable : 4100 )void DoSomething(...){}#pragma warning( pop )

1. AppDelegate app创建app代理。

2. CCEGLView* eglView = CCEGLView::sharedOpenGLView(),获取GLView的指针。

3. eglView->setViewName("FirstGame")创建View的名字,叫“FirstGame”。

4. eglView->setFrameSize(480, 320)设置FrameSize。

5. CCApplication::sharedApplication()->run()正式开始运行应用。

int CCApplication::run(){    PVRFrameEnableControlWindow(false);    // Main message loop:    MSG msg;    LARGE_INTEGER nFreq;    LARGE_INTEGER nLast;    LARGE_INTEGER nNow;    QueryPerformanceFrequency(&nFreq);    QueryPerformanceCounter(&nLast);    // Initialize instance and cocos2d.    if (!applicationDidFinishLaunching())    {        return 0;    }    CCEGLView* pMainWnd = CCEGLView::sharedOpenGLView();    pMainWnd->centerWindow();    ShowWindow(pMainWnd->getHWnd(), SW_SHOW);    while (1)    {        if (! PeekMessage(&msg, NULL, 0, 0, PM_REMOVE))        {            // Get current time tick.            QueryPerformanceCounter(&nNow);            // If it‘s the time to draw next frame, draw it, else sleep a while.            if (nNow.QuadPart - nLast.QuadPart > m_nAnimationInterval.QuadPart)            {                nLast.QuadPart = nNow.QuadPart;                CCDirector::sharedDirector()->mainLoop();            }            else            {                Sleep(0);            }            continue;        }        if (WM_QUIT == msg.message)        {            // Quit message loop.            break;        }        // Deal with windows message.        if (! m_hAccelTable || ! TranslateAccelerator(msg.hwnd, m_hAccelTable, &msg))        {            TranslateMessage(&msg);            DispatchMessage(&msg);        }    }    return (int) msg.wParam;}

 

Cocos2d-x学习笔记(三)main方法