入门看这里:http://www.cnblogs.com/xieheng/p/3611588.html
不敢保证正确,一些自己对它的看法吧。
先看win32里的吧,在工程文件夹有这样2个文件夹,1.Classes文件夹,2.proj.win32文件夹,其他的先不管,其中,Classes文件夹放C++文件,而proj.win32也放C++文件,这2个文件夹的区别是什么,不知道,但main.cpp以及main.h一般都放在proj.win32文件夹里,而工程也是从这开始的,暂且这么认为!
main.cpp里,int APIENTRY _tWinMain(xx)这个函数就是入口了!这一句: int ret = CCApplication::sharedApplication()->run();就可以到我所熟知的AppDelegate了,初始化的东西就都在bool AppDelegate::applicationDidFinishLaunching(),这里了,而进入前台会调用applicationWillEnterForeground,进入后台会调用applicationDidEnterBackground。这里是libcocos2d.dll里的CCEGLView.cpp控制的。(这个类就是用OpenGL生成一个窗口,不同平台有不用的代码实现)具体可看这里。
在CCApplication::run()里,就开始applicationDidFinishLaunching()了。
关于命名空间cocos2d,它把很多需要的类都用NS_CC_BEGIN和NS_CC_END加进来了.
//适配方案具体可看 这里
CCEGLView::sharedOpenGLView()->setDesignResolutionSize(480, 320, kResolutionNoBorder);
//打开显示FPS
pDirector->setDisplayStats(true);
//设置帧率
pDirector->setAnimationInterval(1.0 / 60);
//注册lua引擎
CCLuaEngine* pEngine = CCLuaEngine::defaultEngine();
CCScriptEngineManager::sharedManager()->setScriptEngine(pEngine);
//设置path,运行lua文件 ,要看关于CCFileUtils 看 这里(不同的平台有不同的解析)
//例如android就是用"assets"文件夹默认放资源
std::string path = CCFileUtils::sharedFileUtils()->fullPathForFilename("hello.lua");
pEngine->executeScriptFile(path.c_str());