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; }
时间: 2024-10-11 22:41:18